miércoles, 8 de febrero de 2017

SQL

SQL

FUNCIONES DE SQL

  DDL – Data Definition Language 

 Creación de estructuras de la base de datos. 

 Integridad de los datos. 

DML – Data Manipulation Language 

 Recuperación de datos.  Manipulación de datos. 

 DCL – Data Control Language  Control acceso. 

 Compartición de datos.

INVOCACIÓN DE SQL
  Invocación directa o interactiva. 
 La sentencia es invocada desde el terminal. 
 Los datos devueltos se presentan en pantalla. 
 El resultado puede ser: 
 Un valor 
 Una lista de valores 
 Una tabla 
 Vacío 
 Invocación desde programa. 

 La sentencia se invoca como parte de la ejecución del programa. 
 Los datos devueltos se recogen en una área de entrada del programa. 

VENTAJAS DE SQL 

 Independencia de los fabricantes. 
 Portabilidad a cualquier tipo de plataforma. 
 SQL está estandarizado.  Basado en el modelo relacional. 
 Lenguaje de alto nivel.  Consultas interactivas ad-hoc. 
 Utilización en Lenguaje de programación. 
 Múltiples vistas de los datos. 
 Lenguaje de base de datos. 
 Definición dinámica de datos. 
 Arquitectura cliente/servidor.

 TIPOS DE DATOS 

 CHARACTER (n) 
 CHARACTER VARYING(n) 
 BIT(n) 
 BIT VARYING(n) 
INTEGER  SMALLINT 
 NUMERIC(p, q) 
 DECIMAL(p, q) 
 FLOAT(p) 
 Date: YYYY-MM-DD 
 Time: HH:MM:SS 
 Time(i): i+1 posiciones para fracciones de segundo. 
 Time with time zone: desplazamiento con respecto a la hora universal. 
 Timestamp: incluye día y hora. 
 Interval: un intervalo que se puede usar para incrementar o decrementar valores.

CREACIÓN DE TABLAS


Normalización

Normalización 

¿QUÉ ES LA NORMALIZACIÓN?

 Es un conjunto de reglas que sirven para ayudar a los diseñadores a desarrollar un esquema que minimice los problemas de lógica. 

Cada regla está basada en la que le antecede. La normalización se adoptó porque el viejo estilo de poner todos los datos en un solo lugar, como un archivo o una tabla de la base de datos, era ineficiente y conducía a errores de lógica cuando se trataba de manipular los datos.

  • PRIMERA FORMA NORMAL
  Una tabla está en Primera Forma Normal si:
Todos los atributos son atómicos. Un atributo es atómico si los elementos del dominio son indivisibles, mínimos.
 La tabla contiene una clave primaria.
 La clave primaria no contiene atributos nulos.
 No posee ciclos repetitivos.
No debe de existir variación en el número de columnas.


  • SEGUNDA FORMA NORMAL   
Una tabla 1NF está en 2NF si y solo si, dada cualquier clave candidata y cualquier atributo que no sea parte de la clave candidata, dicho atributo depende de toda la clave candidata en vez de solo una parte de ella. 
 Observe que cuando una tabla 1NF no tiene ninguna clave candidata compuesta (claves candidatas consistiendo en más de un atributo), la tabla está automáticamente en 2NF.


  • TERCERA FORMA NORMAL 
 Una tabla está en Tercera Forma Normal o 3NF si está en 2NF y no existen atributos que no pertenezcan a la clave primaria que puedan ser conocidos mediante otro atributo que no forma parte de la clave primaria, es decir, no hay dependencias funcionales transitivas.






Álgebra Relacional

Álgebra Relacional 

Se denomina álgebra relacional a un conjunto de operaciones encargadas de la manipulación de datos agrupados (relaciones). 
 Estas operaciones describen la manipulación de datos. Son en sí, una representación intermedia de una consulta a una base de datos. 
 Al aplicarse una operación a una tabla, tengo como resultado otra tabla.

  • Operadores 



  • Operación Seleccionar 


  • Operación Proyectar 
  • Eliminar Duplicados 





Modelos Entidad-Relación

MODELOS E-R 

El modelo de datos entidad-relación (E-R) está basado en una percepción del mundo real que consta de una colección de objetos básicos, llamados entidades, y de relaciones entre estos objetos.  El modelo entidad-relación se utiliza habitualmente en el proceso de diseño de bases de datos.

  • Modelo Relacional
En el modelo relacional se utiliza un grupo de tablas para representar los datos y las relaciones entre ellos. Cada tabla está compuesta por varias columnas, y cada columna tiene un nombre único. 
 El modelo relacional se encuentra a un nivel de abstracción inferior al modelo de datos E-R. Los diseños de bases de datos a menudo se realizan en el modelo E-R, y después se traducen al modelo relacional.


  • Simbología 



  • Cardinalidad 






domingo, 11 de diciembre de 2016

DBMS Oracle y MySQL

Servicios MySQl



Inicialmente, MySQL carecía de elementos considerados esenciales en las bases de datos relacionales, tales como integridad referencial y transacciones. A pesar de ello, atrajo a los desarrolladores de páginas web con contenido dinámico, justamente por su simplicidad.

  • Amplio subconjunto del lenguaje SQL. Algunas extensiones son incluidas igualmente.
  • Disponibilidad en gran cantidad de plataformas y sistemas.
  • Posibilidad de selección de mecanismos de almacenamiento que ofrecen diferentes velocidades de operación, soporte físico, capacidad, distribución geográfica, transacciones...
  • Transacciones y claves foráneas.
  • Conectividad segura.
  • Replicación.
  • Búsqueda e indexación de campos de texto.

Servicios Oracle 

“Oracle Partitioning”: mejora el rendimiento, capacidad de administración y la disponibilidad de una amplia variedad de aplicaciones. Ayuda a reducir el coste total de propiedad para el almacenamiento de grandes cantidades de datos. “Oracle Partitioning” permite que las tablas, índices y tablas de índice-organizado “Index-Organized Tables” para ser subdivididas en partes más pequeñas denominadas “particiones”, lo que permite que estos objetos de base de datos puedan ser gestionados y accedidos a un nivel más fino de granularidad. Cada partición posee un nombre propio y pueden poseer características de almacenamiento particulares. Oracle ofrece una rica variedad de estrategias de Particionado para hacer frente a todas las necesidades de negocio. Por otra parte, el particionado es completamente transparente para casi cualquier aplicación sin la necesidad de cambios en las mismas. En base a esto se podría mencionar que “Oracle Partitioning” impacta de forma positiva las siguientes aéreas:

  1. Rendimiento
  2. Capacidad de Administración
  3. Reducción de Costo de Almacenamiento
  4. Granularidad mas fina en el acceso


Bases de datos MySQl




A nivel teórico, existen dos lenguajes para el manejo de bases de datos:
DDL (Data Definition Language) Lenguaje de definición de datos. Es el lenguaje que se usa para crear bases de datos y tablas, y para modificar sus estructuras, así como los permisos y privilegios.
Este lenguaje trabaja sobre unas tablas especiales llamadas diccionario de datos.
DML (Data Manipilation Language) lenguaje de manipulación de datos. Es el que se usa para modificar y obtener datos desde las bases de datos.
SQL engloba ambos lenguajes DDL+DML, y los estudiaremos juntos, ya que ambos forman parte del conjunto de sentencias de SQL.
En este capítulo vamos a explicar el proceso para pasar del modelo lógico relacional, en forma de esquemas de relaciones, al modelo físico, usando sentencias SQL, y viendo las peculiaridades específicas de MySQL.


Bases de datos Oracle 



Oracle Database es un sistema de gestión de base de datos de tipo objeto-relacional (ORDBMS, por el acrónimo en inglés de Object-Relational Data Base Management System), desarrollado por Oracle Corporation.
Se considera a Oracle Database como uno de los sistemas de bases de datos más completos, destacando: soporte de transacciones, estabilidad, escalabilidad, y soporte multiplataforma.
Su dominio en el mercado de servidores empresariales había sido casi total hasta que recientemente tiene la competencia del Microsoft SQL Server y de la oferta de otros RDBMS con licencia libre como PostgreSQL, MySQL o Firebird.

Requisitos Hardware y Software MYSQL



  •  Necesitan .NET Framework 4.6 para el Motor de base de datos, Master Data Services o la replicación. 
  • Software de red: Las instancias con nombre y predeterminadas de una instalación independiente admiten los siguientes protocolos de red: Memoria compartida, Canalizaciones con nombre, TCP/IP y VIA.
  • Disco Duro: Un mínimo de 6 GB de espacio disponible en disco.

Requisitos Hardware y Software Oracle


  • Plataformas admitidas
  • Información importante sobre revisiones del producto
  • Versión JDK
  • Para conmutar a otra versión admitida de Java SE
  • Versión de Apache Ant
  • Bases de datos y controladores JDBC
  • Utilización de la base de datos Java DB incluida
  • Versiones de cola de mensajes

Tipos de datos MySQL


TinyInt:
Es un número entero con o sin signo. Con signo el rango de valores válidos va desde -128 a 127. Sin signo, el rango de valores es de 0 a 255
Bit ó Bool:
Un número entero que puede ser 0 ó 1
SmallInt:
Número entero con o sin signo. Con signo el rango de valores va desde -32768 a 32767. Sin signo, el rango de valores es de 0 a 65535.
MediumInt:
Número entero con o sin signo. Con signo el rango de valores va desde -8.388.608 a 8.388.607. Sin signo el rango va desde 0 a16777215.
Integer, Int:
Número entero con o sin signo. Con signo el rango de valores va desde -2147483648 a 2147483647. Sin signo el rango va desde 0 a 429.4967.295
BigInt:
Número entero con o sin signo. Con signo el rango de valores va desde -9.223.372.036.854.775.808 a 9.223.372.036.854.775.807. Sin signo el rango va desde 0 a 18.446.744.073.709.551.615.
Float:
Número pequeño en coma flotante de precisión simple. Los valores válidos van desde -3.402823466E+38 a -1.175494351E-38, 0 y desde 1.175494351E-38 a 3.402823466E+38.


Date:

Tipo fecha, almacena una fecha. El rango de valores va desde el 1 de enero del 1001 al 31 de diciembre de 9999. El formato de almacenamiento es de año-mes-dia

DateTime:

Combinación de fecha y hora. El rango de valores va desde el 1 de enero del 1001 a las 0 horas, 0 minutos y 0 segundos al 31 de diciembre del 9999 a las 23 horas, 59 minutos y 59 segundos. El formato de almacenamiento es de año-mes-dia horas:minutos:segundos
Tipos de datos Oracle



CHAR   Cadena de caracteres (alfanuméricos) de longitud fija   Entre 1 y 2000 bytes como máximo. Aunque se introduzca un valor más corto que el indicado en el tamaño, se rellenará al tamaño indicado. Es de longitud fija, siempre ocupará lo mismo, independientemente del valor que contenga

VARCHAR2      Cadena de caracteres de longitud variable .Entre 1 y 4000 bytes como máximo. El tamaño del campo dependerá del valor que contenga, es de longitud variable.
VARCHAR Cadena de caracteres de longitud variable   .En desuso, se utiliza VARCHAR2 en su lugar
NCHAR Cadena de caracteres de longitud fija que sólo almacena caracteres Unicode  
Entre 1 y 2000 bytes como máximo. El juego de caracteres del tipo de datos (datatype) NCHAR sólo puede ser AL16UTF16 ó UTF8. El juego de caracteres se especifica cuando se crea la base de datos Oracle
NVARCHAR2    Cadena de caracteres de longitud variable que sólo almacena caracteres Unicode       

Entre 1 y 4000 bytes como máximo. El juego de caracteres del tipo de datos (datatype) NCHAR sólo puede ser AL16UTF16 ó UTF8. El juego de caracteres se especifica cuando se crea la base de datos Oracle




sábado, 17 de septiembre de 2016

Sistema gestor de base de datos (DBMS)


DBMS

Sistema gestor de bases de datos. Se denominan así a los sistemas desarrollados para administrar las bases de datos, también llamados motor de bases de datos, son el corazón de un sistema de información, que se encarga de mantener la información en una estructura física y proveer las facilidades para el uso de al misma por otras aplicaciones.

ORACLE  : Actualmente el DBMS comercial mas popular en el mercado. Entre sus principales características están:

  • Alto rendimiento en transacciones.
  • Alta disponibilidad.
  • Alta concurrencia de usuarios.
  • Manejo de grandes cantidades de datos.
  • Gestión de seguridad.
DB2 : Es el principal producto de IBM en el sector de base de datos.Entre sus principales características están: 
  • Monitor gráfico (permite optimizar rendimiento en tiempo real).+
  • Capacidad XML.
  • Compresión de almacenamiento venom.
  • Gestion autonoma de almacenamiento. 
My SQL : Líder en el sector de base de datos de uso libre y de aplicaciones de Internet. Entre sus principales características están: 
  • Funciona en infinidad de plataformas
  • Multiprocesador.
  • Transaccional o no transaccional.
  • Escalabilidad.
POSTGRES : El sistema de gestión de base de datos de código abierto mas potente del mercado. Entre sus principales características están: 

  • 100% Transaccional.
  • Procedimientos almacenados.
  • API's de varios lenguajes de programación.
  • Regionalizacion por columnas. 



Modelos de Bases de Datos

Un modelo de base de datos es un tipo de modelo de datos que determina la estructura lógica de una base de datos y de manera fundamental determina el modo de almacenar, organizar y manipular los datos.


  • Modelo jerárquicoUn modelo de datos jerárquico es un modelo de datos en el cual los datos son organizados en una estructura parecida a un árbol. La estructura permite a la información que repite y usa relaciones padre/Hijo: cada padre puede tener muchos hijos pero cada hijo sólo tiene un padre.

  • Modelo en redUna base de datos de red es una base de datos conformada por una colección o set de registros, los cuales están conectados entre sí por medio de enlaces en una red. El registro es similar al de una entidad como las empleadas en el modelo relacional.

  • Modelo relacional : El modelo relacional, para el modelado y la gestión de bases de datos, es un modelo de datos basado en la lógica de predicados y en la teoría de conjuntos.

  • Modelo entidad-relación : Un diagrama o modelo entidad-relación es una herramienta para el modelado de datos que permite representar las entidades relevantes de un sistema de información así como sus interrelaciones y propiedades.

  • Modelo documental: Una base de datos documental está constituida por un conjunto de programas que almacenan, recuperan y gestionan datos de documentos o datos de algún modo estructurados.