BASES DE DATOS - SQL Javier Enciso
AGENDA Conceptos Básicos de Bases de Datos Manejo de Bases de Datos y Tablas SQL Inserción, Actualización y Borrado Consultas usando SELECT
AGENDA Conceptos Básicos de Bases de Datos Manejo de Bases de Datos y Tablas SQL Inserción, Actualización y Borrado Consultas usando SELECT
Conceptos Básicos de Bases de Datos Base de Datos: Conjunto de archivos que almacenan datos estructurados que están interrelacionados y organizados lógicamente (administrables) para representar información del mundo real Dato: Unidad mínima de información
Conceptos Básicos de Bases de Datos Información: Colección de datos con un sentido Archivo: Conjunto de campos relacionados que detallan una serie de características de un objeto de la vida real Campo: Contiene una característica que hace parte de un archivo (registro), expresada en un dato
Conceptos Básicos de Bases de Datos Modelo Entidad-Relación Entidad: Objeto de importancia para la empresa (abstracto, sustantivo) Relación: Vínculo entre entidades (verbo) Obligatoriedad: Si un elemento de la entidad 1 requiere de por lo menos un elemento de la entidad 2 Cardinalidad Es la correspondencia de un elemento de la entidad 1 con los elementos de la entidad 2 (1-1, 1-M, M-N) Atributo: Característica propia de una entidad
Conceptos Básicos de Bases de Datos Modelo Entidad-Relación Llave o clave primaria: Conjunto de campos (uno o más) que identifican de una manera única un archivo Llave o clave alterna: Conjunto de campos (uno o más) que identifican de manera única un archivo, pero que fueron considerados como secundarios Llave o clave candidata: Conjunto formado por las llaves primarias y llaves alternas
Conceptos Básicos de Bases de Datos Características de las BBDD relacionales Integridad por valor: Restringir los valores de un campo Integridad referencial: Si en una relación hay alguna clave ajena, sus valores deben coincidir con valores de la clave primaria a la que hace referencia, o bien, deben ser completamente nulos
Conceptos Básicos de Bases de Datos Características de las BBDD relacionales Independencia lógica de campos: Un cambio en la definición de un esquema no debe afectar a las aplicaciones de usuario Independencia física de datos: La descripción física de datos puede cambiar sin afectar a las aplicaciones de usuario, por ejemplo, los datos pueden ser movidos de un disco a otro
AGENDA Conceptos Básicos de Bases de Datos Manejo de Bases de Datos y Tablas SQL Inserción, Actualización y Borrado Consultas usando SELECT
Manejo de Bases de Datos y Tablas Sistema de Gestión de Bases de Datos (SGBD) Sistema de software que permite a sus usuarios crear, mantener y controlar el acceso a una BD. SGBDR: SGBD Relacional Proporcionan acceso más rápido a los datos que un archivo plano Fácil consulta por criterios Permiten acceso concurrente Integridad, confidencialidad y seguridad
Manejo de Bases de Datos y Tablas Tablas Representan Entidades y Relaciones Componentes Columnas Único nombre y diferentes datos Son llamados campos o atributos Filas (registros o tuplas) Valores Claves
Manejo de Bases de Datos y Tablas Tablas Codigo Nombre Telefono 1 Juan 1234567 2 Pedro 7654321
Manejo de Bases de Datos y Tablas Metodología de diseño E-R 1. Identificar lista de entidades 2. Definir relaciones entre entidades 3. Establecer obligatoriedad y cardinalidad 4. Identificar lista de campos para cada entidad 5. Convertir las relaciones M-N -> 1-M Definir una entidad nueva Construir 2 relaciones 1-M dependientes, heredar las PK 6. Definir atributos para entidades nuevas
Manejo de Bases de Datos y Tablas Modelo de Datos Contiene las relaciones 1-M Las entidades se convierten en tablas Ejemplo Base de datos para un video que maneja el alquiler de películas en formato DVD y VHS
Manejo de Bases de Datos y Tablas Identificar la lista de posibles entidades Clientes Videos Formatos Definir las relaciones entre las entidades del modelo Cliente Video Video - Formato
Manejo de Bases de Datos y Tablas Obligatoriedad y cardinalidad de las relaciones
Manejo de Bases de Datos y Tablas Identificar la lista de posibles atributos Clientes Documento (PK) Nombre (Obligatorio) Dirección (Obligatorio) Teléfono (Opcional) Videos Código (PK) Nombre (Obligatorio) Formato (Obligatorio) Formatos Código (PK) Tipo (Obligatorio)
Manejo de Bases de Datos y Tablas Convertir las relaciones M-N en 1-M Definir los atributos para las entidades nuevas
AGENDA Conceptos Básicos de Bases de Datos Manejo de Bases de Datos y Tablas SQL Inserción, Actualización y Borrado Consultas usando SELECT
SQL SEQUEL: (Structured English QUEry Language ) IBM. Principios de los 70 SQL: Structured Query Language (Leguaje de Consultas Estructurado) SQL-86 SQL-87 SQL-89 SQL-92
SQL Componentes del lenguaje Lenguaje de definición de datos: Creación de tablas, vistas, índices, etc Lenguaje de manipulación de datos: Operaciones de consulta, inserción, actualización y borrado de datos
AGENDA Conceptos Básicos de Bases de Datos Manejo de Bases de Datos y Tablas SQL Inserción, Actualización y Borrado Consultas usando SELECT
Inserción, Actualización y Borrado Inserción INSERT INTO tabla (atributos) VALUES (valores);
Inserción, Actualización y Borrado Actualización UPDATE tablas SET atributo=valor WHERE condición;
Inserción, Actualización y Borrado Eliminación DELETE FROM tabla WHERE condición;
AGENDA Conceptos Básicos de Bases de Datos Manejo de Bases de Datos y Tablas SQL Inserción, Actualización y Borrado Consultas usando SELECT
Consultas usando SELECT Sin ordenamiento SELECT atributos FROM tablas, consultas WHERE condiciones;
Consultas usando SELECT Con ordenamiento SELECT atributos FROM tablas, consultas WHERE condiciones ORDER BY atributos ASC/DESC;
Consultas usando SELECT Uniones SELECT atributos FROM tablas, consultas WHERE condiciones UNION SELECT atributos FROM tablas, consultas WHERE condiciones;