Unidad formativa 1. Diseño de bases de datos relacionales
Unidad didáctica 1. Introducción a las bases de datos
- Evolución histórica de las bases de datos
- Ventajas e inconvenientes de las bases de datos
- Conceptos generales
- Concepto de bases de datos
- Objetivos de los sistemas de bases de datos
- Redundancia e inconsistencia de datos
- Dificultad para tener acceso a los datos
- Aislamiento de los datos
- Anomalías del acceso concurrente
- Problemas de seguridad
- Problemas de integridad
- Administración de los datos y administración de bases de datos
- Niveles de arquitectura: interno, conceptual y externo
- Modelos de datos
- Clasificación
- Independencia de los datos
- Lenguaje de definición de datos
- Lenguaje de manejo de bases de datos
- Tipos
- El sistema de gestión de la base de datos (DBMS)
- Funciones
- El administrador de la base de datos (DBA)
- Funciones
- Usuarios de las bases de datos
- Estructura general de la base de datos
- Componentes funcionales
- Arquitectura de sistemas de bases de datos
Unidad didáctica 2. Modelos conceptuales de bases de datos
- El modelo entidad-relación
- Entidades
- Interrelaciones
- Cardinalidad, rol y grado
- Dominios y valores
- Atributos
- Propiedades identificatorias
- Diagramas entidad-relación
- Simbología
- El modelo entidad-relación extendido
- Restricciones de integridad
- Restricciones inherentes
- Restricciones explícitas
Unidad didáctica 3. El modelo relacional
- Evolución del modelo relacional
- Estructura del modelo relacional
- El concepto de relación
- Propiedades de las relaciones
- Atributos y dominio de los atributos
- Tupla, grado y cardinalidad
- Relaciones y tablas
- Claves en el modelo relacional
- Claves candidatas
- Claves primarias
- Claves alternativas
- Claves ajenas
- Restricciones de integridad
- Valor «Null» en el modelo
- Integridad de las entidades
- Integridad referencial
- Teoría de la normalización
- El proceso de normalización
- Tipos de dependencias funcionales
- Primera forma normal (1FN)
- Segunda forma normal (2FN)
- Tercera forma normal (3FN)
- Otras formas normales (4FN, 5FN)
- Desnormalización
- Razones para la desnormalización
Unidad didáctica 4. El ciclo de vida de un proyecto
- El ciclo de vida de una base de datos
- Estudio previo y plan de trabajo
- Actividades
- Concepción de la base de datos y selección del equipo físico y lógico
- Conceptos generales acerca del análisis de aplicaciones
- Concepción de la base de datos
- Selección del equipo físico y lógico
- Diseño y carga
- Conceptos generales acerca del diseño de aplicaciones
- Diseño lógico
- Diseño físico
- Carga y optimización de la base de datos
- Conceptos generales del control de calidad
- Control de calidad de las especificaciones funcionales
- Seguimiento de los requisitos de usuario
Unidad didáctica 5. Creación y diseño de bases de datos
- Enfoques de diseño
- Diseños incorrectos
- Causas
- Enfoque de análisis
- Ventajas y desventajas
- Enfoque de síntesis
- Ventajas y desventajas
- Metodologías de diseño
- Concepto
- Diseños conceptual, lógico y físico
- Entradas y salidas del proceso
- Estudio del diseño lógico de una base de datos relacional
- El diccionario de datos
- Concepto y estructura
- Estudio del diseño de la base de datos y de los requisitos de usuario
Unidad formativa 2. Definición y manipulación de datos
Unidad didáctica 1. Lenguajes relacionales
- Tipos de lenguajes relacionales
- Operaciones en el modelo relacional
- Álgebra relacional
- Clasificación de operadores
- Denominación de atributos
- Relaciones derivadas
- Operaciones primitivas: selección, proyección, producto cartesiano, unión y diferencia
- Otras operaciones: intersección, join, división, etc.
- Cálculo relacional
- Cálculo relacional orientado a dominios
- Cálculo relacional orientado a tuplas
- Transformación de consultas entre álgebra y cálculo relacional
- Lenguajes comerciales
- SQL (Structured Query Language)
- QBE (Query By Example)
- Orígenes y evolución del SQL
- Características del SQL
- Sistemas de gestión de bases de datos con soporte SQL
Unidad didáctica 2. El lenguaje de manipulación de la base de datos
- El lenguaje de definición de datos (DDL)
- Tipos de datos del lenguaje
- Creación, modificación y borrado de tablas
- Creación, modificación y borrado de vistas
- Creación, modificación y borrado de índices
- Especificación de restricciones de integridad
- El lenguaje de manipulación de datos (DML)
- Construcción de consultas de selección
- Agregación
- Subconsultas
- Unión
- Intersección
- Diferencia
- Construcción de consultas de inserción
- Construcción de consultas de modificación
- Construcción de consultas de borrado
- Cláusulas del lenguaje para la agrupación y ordenación de las consultas
- Capacidades aritméticas, lógicas y de comparación del lenguaje
- Funciones agregadas del lenguaje
- Tratamiento de valores nulos
- Construcción de consultas anidadas
- Unión, intersección y diferencia de consultas
- Consultas de tablas cruzadas
- Otras cláusulas del lenguaje
- Extensiones del lenguaje
- Creación, manipulación y borrado de vistas
- Especificación de restricciones de integridad
- Instrucciones de autorización
- Control de las transacciones
- El lenguaje de control de datos (DCL)
- Transacciones
- Propiedades de las transacciones: atomicidad, consistencia, aislamiento y permanencia
- Estados de una transacción: activa, parcialmente comprometida, fallida, abortada y comprometida
- Consultas y almacenamiento de estructuras en XML
- Estructura del diccionario de datos
- Control de las transacciones
- Privilegios: autorizaciones y desautorizaciones
- Procesamiento y optimización de consultas
- Procesamiento de una consulta
- Tipos de optimización: basada en reglas, basada en costes y otros