Bditig
Bditig
1 Curso: 3 Cuatrimestre: 1 Carcter: OBLIGATORIA Crditos tericos: 4,5 Crditos prcticos: 3 Profesor/es: MANUEL TORRES GIL Area: LENGUAJES Y SISTEMAS INFORMATICOS
TEMARIO - Programa de teora TEMA 1. Introduccin a las bases de datos 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. Introduccin Datos e informacin Bases de datos, Sistemas de bases de datos y Sistemas de gestin de bases de datos Aplicaciones de los Sistemas de bases de datos El enfoque de bases de datos frente al de los Sistemas de gestin de archivos Implicaciones del uso del enfoque de bases de datos Planificacin estratgica de bases de datos Abstraccin de datos Esquemas e instancias Independencia de datos Modelos de datos Lenguajes e interfaces de Bases de datos Usuarios y administradores de la base de datos Gestin de transacciones Estructura de un Sistema de gestin de bases de datos
TEMA 2. Modelado Entidad-Relacin 1. Introduccin al modelado conceptual de bases de datos 2. Conceptos bsicos 2.1. Entidades y conjuntos de entidades 2.2. Atributos y dominios 2.3. Relaciones y conjuntos de relaciones 2.4. Relaciones recursivas 3. Relaciones ternarias 4. Restricciones de cardinalidad 5. Restricciones de integridad 6. Claves. Tipos de entidades 7. Diagrama E-R. Notaciones 8. Documentacin de diagramas Entidad-Relacin 9. Paso a tablas de los diagramas Entidad-Relacin 10. Modelo Entidad-Relacin extendido 10.1. Subclases, superclases y herencia
10.2. Generalizacin 10.3. Especializacin 11. Diseo de bases de datos con diagramas de clase UML TEMA 3. Modelo relacional 1. La estructura del modelo relacional 1.1. Dominios, atributos, tuplas y relaciones 1.2. Caractersticas de las relaciones 1.3. Notacin del modelo relacional 2. Restricciones relacionales y esquemas de bases de datos relacionales 2.1. Restricciones de dominio 2.2. Restricciones de clave y restricciones sobre nulos 2.3. Bases de datos relacionales y esquemas de bases de datos 2.4. Integridad de entidades, integridad referencial y claves externas 3. Operaciones de actualizacin y tratamiento de la violacin de restricciones 4. Lenguajes de consulta procedimentales y no procedimentales 5. lgebra relacional 5.1. Operaciones fundamentales 5.2. Otras operaciones 6. Clculo relacional de tuplas 6.1. Variables de tupla y relaciones de rango 6.2. Expresiones y frmulas en el clculo relacional de tuplas 6.3. Uso de cuantificadores 7. Clculo relacional de dominios TEMA 4. Lenguajes de consulta comerciales 1. SQL 1.1. Definicin de datos en SQL 1.1.1. Tipos de dominios 1.1.2. Definicin de esquemas 1.1.3. Definicin de tablas. Especificacin de restricciones 1.1.4. Modificacin de esquemas 1.1.5. El diccionario de datos 1.2. Consulta de datos en SQL 1.2.1. Estructura bsica de una consulta SQL 1.2.2. Gestin de valores nulos y duplicados 1.2.3. Combinacin de relaciones 1.2.4. Agrupacin y funciones de agregacin 1.2.5. Operaciones sobre conjuntos 1.2.6. Alias y variables tupla 1.2.7. Consultas anidadas 1.2.8. Consultas correlacionadas 1.2.9. Vistas. Actualizacin de vistas 1.3. Modificacin de datos en SQL 1.3.1. Insercin 1.3.2. Eliminacin 1.3.3. Actualizacin 2. QBE 2.1. Recuperaciones bsicas en QBE 2.2. Agrupacin y agregacin
2.3. Modificacin de la base de datos TEMA 5. Diseo lgico de bases de datos relacionales 1. Consejos de diseo para esquemas de relacin 1.1. Semntica de la relacin 1.2. Redundancia y Anomalas de actualizacin 1.3. Valores nulos en las tuplas 1.4. Generacin de tuplas incorrectas 2. Dependencias funcionales 2.1. Definicin de dependencia funcional 2.2. Reglas de inferencia para dependencias funcionales. Axiomas de Armstrong 2.3. Cobertura de un conjunto de dependencias funcionales 2.4. Equivalencia de conjuntos de dependencias funcionales 2.5. Cobertura mnima de dependencias funcionales 3. Normalizacin 3.1. Introduccin a la normalizacin 3.2. Primera forma normal 3.3. Segunda forma normal 3.4. Tercera forma normal 3.5. Forma normal de Boyce-Codd 3.6. Otras formas normales 4. Proceso general de diseo de bases de datos relacionales 4.1. El modelo Entidad-Relacin y la normalizacin 4.2. Desnormalizacin para el rendimiento TEMA 6. Transacciones y seguridad 1. Introduccin al procesamiento de transacciones 1.1. Modelo de base de datos para el procesamiento de transacciones 1.2. Necesidad del control de la concurrencia 1.2.1. El problema de la actualizacin perdida 1.2.2. El problema de la lectura sucia 1.2.3. Problema del resumen incorrecto 1.2.4. Problema de la lectura no repetible 1.3. Necesidad de la recuperacin 1.4. Estados de una transaccin 1.5. Propiedades de las transacciones 1.6. Serializabilidad 1.6.1. Serializabilidad de un plan 1.6.2. Prueba de serializabilidad por conflictos de un plan 1.7. Soporte de transacciones en SQL 2. Introduccin a la seguridad y autorizacin en bases de datos 2.1. La seguridad de la base de datos y el DBA. 2.2. Control de acceso discrecional basado en la concesin y revocacin de privilegios 2.3. Privilegios en SQL 2.3.1. Concesin de privilegios 2.3.2. Revocacin de privilegios Programa de prcticas PRACTICA 1. Desarrollo de bases de datos con Microsoft Access
1. Descripcin de Microsoft Access 2000 2. Definicin de tablas 3. Diseo de formularios sencillos 4. Diseo de informes sencillos 5. Creacin de relaciones 6. Diseo de consultas 7. Diseo de formularios basados en subformularios 8. Diseo de informes basados en subinformes 9. Diseo de una interfaz de ejemplo para la explotacin de una base de datos 10. Desarrollo de una aplicacin sencilla de bases de datos PRACTICA 2. Modelado de datos con herramientas CASE. Estudio de Silverrun 1. Descripcin de Silverrun 2. Silverrun-ERX 2.1. Creacin de un diagrama Entidad-Relacin 2.2. Anlisis de diagramas Entidad-Relacin 2.3. Herramientas complemetarias de Silverrun-ERX 3. Silverrun-RDM 3.1. Creacin de un esquema para una base de datos relacional 3.2. Generacin de las sentencias SQL que definen el esquema de la base de datos 3.3. Generacin de documentacin de la definicin de la base de datos 4. Desarrollo de un esquema conceptual y lgico utilizando Silverrun PRACTICA 3. Desarrollo de bases de datos con Oracle 1. Introduccin a Oracle 1.1. El servidor de Oracle 1.2. Estructuras de una base de datos Oracle y Gestin del espacio 1.3. Estructuras de memoria y procesos 1.4. Concurrencia y consistencia 1.5. Las operaciones de inicio y parada de la base de datos 1.6. Seguridad de la base de datos 1.7. Copias de seguridad y Restauracin de copias 2. SQL Net Easy Configuration 2.1. Componentes de un alias de base de datos 2.2. Creacin de un alias de base de datos 3. SQL*Plus 3.1. Introduccin 3.2. Definicin de datos en SQL 3.3. Consulta de datos en SQL 3.3.1 Creacin y eliminacin de vistas 3.3.2 Modificacin de datos en SQL 3.3. El bfer de SQL*Plus 4. Developer 2000 4.1. Introduccin a las herramientas de Developer 2000 4.2. El proceso de desarrollo de una aplicacin de bases de datos 4.3. Diseo de formularios con Form Builder BIBLIOGRAFIA BASICA
Abraham Silberschatz, Henry Korth y S. Sudarshan. Fundamentos de bases de datos (4 edicin). ISBN: 8448136543. McGraw-Hill, 2002. Ramez Elmasri, Shamkant Navathe. Fundamentos de Sistemas de bases de datos (3 edicin). ISBN: 8478290516. Addison Wesley, 2002. Adoracin De Miguel, Mario Piatinni. Diseo de Bases de datos relacionales. ISBN: 8478973850. Ra-Ma, 1999. BIBLIOGRAFA COMPLEMENTARIA
Paolo Atzeni, et al. Database Systems: Concepts, Languages, Architectures. ISBN: 0077095006. McGraw-Hill, 1999. Adoracin De Miguel, et al. Diseo de Bases de datos: Problemas resueltos. ISBN: 8478974369. Ra-Ma, 2000 Adoracin De Miguel, Mario Piatinni. Fundamentos y Modelos de Bases de Datos. (2 Edicin). ISBN:8478973613. Ra-Ma, 1999. Ramon Mata-Toledo, Pauline Cushman. Fundamentals of Relational Databases. ISBN: 007136188X. Schaum, 2000. Ramon Mata-Toledo, Pauline Cushman. Fundamentals of SQL Programming. ISBN: 0071359532. Schaum, 2000. Robert Muller. Oracle Developer. Edicin de aprendizaje. ISBN: 8448130022. McGraw-Hill, 2001. Jeffrey Ullman, Jennifer Widom. Introduccion a los Sistemas de Bases de datos. Prentice-Hall, 1999. OBSERVACIONES
Requiere ciertos conocimientos de programacin y estructuras de datos. EVALUACIN La asignatura ser evaluada a nivel terico y prctico. Para aprobar las prcticas, ser necesario realizar y entregar las actividades desarrolladas en clase. La parte terica constar de un examen de teora y problemas dividido en tres partes: teora, modelado y consultas. Para aprobar el examen ser necesario superar cada una de las partes.