GESTIÓN DE BASES DE DATOS
Álvaro González Sotillo
Created: 2024-09-08 dom 17:51
1. Cómo serán las clases
- Teoría
- Basada en apuntes
- Con un libro de texto
- Ejercicios
- Se realizan en clase o en casa
- Se ponen en común al día siguiente
- Práctica
- Trabajos
2. Materiales
- Memoria USB
- Correo electrónico
- Acceso a Internet fuera del aula
- Portátil propio (opcional)
- No se puede usar la red del centro
- Se puede usar la wifi
2.1. Libro de texto
- Gestión de Bases de Datos
- Editorial: Garceta
- Autor: Iván López Montalbán; Mª Jesús Castellano Pérez
- ISBN: 978-84-1545-294-2
3. Entrega de Trabajos
- Via Moodle
- Se utilizará Microsoft Office (DOC, DOCX)
- Opcionalmente, PDF o LibreOffice (ODT)
- Se tendrá en cuenta
- La corrección técnica de los trabajos
- La fecha de entrega
- Expresión, sintaxis, ortografía
- La apariencia profesional
4. Normas
- Retrasos y faltas
- Uso de los ordenadores
- No pueden utilizarse para tareas distintas de las encargadas por el profesor
- Se respetará a otros alumnos
- Móviles
- No.
- Un smartwatch se considera un móvil.
4.1. Averías de los ordenadores
- Los problemas se comunican al profesor en cuanto se detectan
- Se deben hacer copias de seguridad para no perder los datos de los discos
- Pen Drive
- Disco Externo
- Correos enviados a uno mismo
- Copias en los ordenadores de otros compañeros
- Norma fundamental:
Si se pierde porque no hay copia, es que no era importante
5. Cómo será la evaluación
- Trabajos
- Actitud
- Puntualidad, interés, preguntas al profesor, puesta en común de resultados, comportamiento…
- Exámenes
- Dos parciales y un final por evaluación
- Se necesita un mínimo de 3,5 en cada parcial para hacer media
- Entrega de trabajos
- Individuales
- Un trabajo entregado tarde puntua como máximo 6
5.2. Detalles sobre la calificación
- Son necesarios todos los trabajos para poder aprobar
- Las colaboraciones en clase pueden premiarse con aumento de nota de la parte de trabajos
- En un problema de un trabajo o examen, se necesita la totalidad para poder puntuar el problema
- Los conocimientos y esfuerzo para conseguir el 80% de un problema suelen ser bajos
- La dificultad real suele estar en el 20% restante del problema
- Ejemplo: ¿Dónde está la dificultad?
- Instala Windows (10% de dificultad)
- Instala Linux junto a Windows (20% de dificultad)
- Haz que cada S.O. pueda ver los ficheros del otro (70% restante)
6. Temas del libro de referencia
6.1. Sistemas de almacenamiento de la información
- Ficheros
- Bases de Datos
- Los Sistemas Gestores de Base de Datos
6.2. Diseño lógico de bases de datos
- Representación del problema
- El modelo de datos
- Diagramas E/R
- El modelo E/R ampliado
- Construcción de un diagrama E/R
- El modelo relacional
- Transformación de un diagrama E/R al modelo relacional
- Normalización
6.3. Diseño físico de bases de datos
- Notación para la sintaxis
- Herramientas gráficas proporcionadas por los SGBD
- Intérpretes de comandos de los SGBD
- El lenguaje de definición de datos
- Creación de bases de datos
- Modificación de una base de datos
- Borrado de bases de datos
- Creación de tablas
- Modificación de tablas
- Borrado de tablas
- Renombrado de tablas
6.4. Realización de Consultas
- El lenguaje DML
- La sentencia SELECT
- Consultas básicas
- Filtros
- Ordenación
- Consultas de resumen
- Subconsultas
- Consultas multitabla
- Consultas reflexivas
- Consultas con tablas derivadas
6.5. Edición de los datos
- Herramientas gráficas para la edición de los datos
- La sentencia INSERT
- La sentencia INSERT extendida
- INSERT y SELECT
- La sentencia UPDATE
- La sentencia DELETE
- La sentencias UPDATE y DELETE con subconsultas
- Borrado y modificación de registros con relaciones
- Transacciones
- Acceso concurrente a los datos
6.6. Construcción de Guiones
- ¿Por qué PL/SQL?
- Otros lenguajes de programación
- Bloques de Código Anóonimos en PL/SQL
- Tipos de datos en PL/SQL
- Operadores y expresiones
- Entrada y salida para la depuración
- Estructuras de Control
- Estructuras funcionales: procedimientos y funciones
- Sentencias SQL en PL/SQL
- Acceso a la Base de Datos. Cursores
- Excepciones en PL/SQL
- Disparadores o Triggers
6.7. Seguridad de los datos
- Recuperación de fallos
- Tipos de copias de seguridad
- Copias de seguridad y restauración en MySQL
- Copias de seguridad y restauración en Oracle
- Restauración de copias en Oracle con RMAN
- Copias de seguridad y restauración en DB2
- Exportación e importación de datos. Transferencia de datos entre sistemas gestores
- Herramientas gráficas para la salvaguarda de la información
7. Contenidos
- Decreto 12/2010, de 18 de marzo
7.1. Sistemas de almacenamiento de la información:
- Ficheros (planos, indexados y acceso rápido, de marcas, entre otros).
- Bases de Datos (BD). Conceptos, usos y tipos según el modelo de datos, la ubicación de la información.
- Sistemas gestores de bases de datos (SGBD): funciones, componentes y tipos.
7.2. Diseño conceptual y lógico de bases de datos:
- Modelos de datos: relacional y orientado a objetos.
- La representación del problema. El modelo conceptual: los diagramas E/R (Entidad/Relación).
- Entidades y atributos. Identificadores principales.
- Relaciones: cardinalidad y correspondencia.
- Relaciones de dependencia en existencia y en identificación.
- El modelo E/R ampliado:
- Atributos multivaluados y compuestos.
- Jerarquías y generalizaciones.
- Asociaciones.
- El modelo relacional: Terminología del modelo relacional. Características de una relación. Claves primarias y claves ajenas.
- Paso del diagrama E/R al modelo relacional.
- Normalización. Dependencias funcionales. Formas normales. Conveniencia de la desnormalización.
- El modelo orientado a objetos. Conceptos generales.
- Diagramas de clases y de objetos.
7.3. Diseño físico de bases de datos:
- Herramientas gráficas proporcionadas por el sistema gestor para la implementación de la base de datos.
- Lenguaje estándar de consulta SQL (Standard Query Language).
- Lenguaje de definición de datos DDL (Data Definition Language): Creación, modificación y eliminación de objetos de la base de datos.
- Lenguaje de manipulación de datos DML (Data Manipulation Language): Selección, inserción, modificación y eliminación de registros.
- Lenguaje de control de datos DCL (Data Control Language): Confirmación/anulación de transacciones.
- Creación, modificación y eliminación de bases de datos.
- Creación, modificación y eliminación de tablas. Tipos de datos.
- Implementación de restricciones sobre tablas: clave primaria, clave ajena, unicidad, chequeo, valores por defecto.
- Truncado de tablas.
7.4. Realización de consultas:
- Herramientas gráficas, proporcionadas por el sistema gestor o externas, para la realización de consultas.
- Selección de registros:
- Elección de origen de datos: tablas, vistas, selecciones.
- Filtrado de registros.
- Orden de los resultados devueltos.
- Tratamiento de valores nulos.
- Consultas de resumen. Agrupamiento de registros. Filtrado sobre agrupaciones.
- Operaciones de conjuntos sobre consultas: unión, intersección y diferencia.
- Vinculación de tablas: claves primarias y ajenas. Composiciones internas y externas.
- Subconsultas:
- Devolución de valores individuales.
- Devolución de listas de valores.
- Devolución de tuplas de valores.
- Correlacionadas.
- Consultas jerárquicas.
7.5. Edición de los datos:
- Herramientas gráficas, proporcionadas por el sistema gestor o externas, para la edición de la información.
- Sentencias de inserción, eliminación y actualización de registros:
- A partir de datos proporcionados por el usuario.
- A partir de datos recuperados mediante subconsultas.
- Subconsultas y combinación de órdenes de edición.
- Transacciones. Estados temporales intermedios de la base de datos. Sentencias de procesamiento de transacciones.
- Acceso simultáneo a los datos: políticas de bloqueo. Niveles de bloqueo (fila, tabla).
7.6. Creación de otros objetos de la base de datos:
- Vistas. Vistas montadas sobre múltiples tablas. Operaciones sobre vistas.
- Sinónimos de objetos.
- Enlaces a otras bases de datos.
7.7. Optimización de consultas:
- Creación de índices. Monocampo vs. multicampo.
- Índices únicos y con duplicados.
- Índices basados en funciones.
- Criterios para la creación de índices.
- Plan de ejecución de sentencias. Análisis comparativo.
- Métodos de vinculación de tablas.
- Optimización basada en costes vs. basada en reglas.
- Sugerencias (hints) de ejecución.
7.8. Construcción de guiones:
- Introducción. Conceptos generales del lenguaje de programación integrado en el SGBD.
- Tipos de datos, identificadores, variables.
- Operadores. Estructuras de control.
- Cursores.
- Procedimientos y funciones almacenados.
- Excepciones.
7.9. Gestión de seguridad de los datos:
- Tipos de fallos.
- Recuperación de fallos.
- Copias de seguridad.
- Herramientas gráficas y utilidades proporcionadas por el sistema gestor para la realización de copias de seguridad.
- Sentencias para la realización y recuperación de copias de seguridad.
- Herramientas gráficas y utilidades para importación y exportación de datos.
- Transferencia de datos entre sistemas gestores.
7.10. Bases de datos distribuidas:
- Conceptos y diseño.
- Casos de idoneidad.
- Técnicas de fragmentación: vertical, horizontal, mixta.
- Técnicas de distribución de datos.
- Esquemas de asignación y replicación de datos.
8. Criterios de evaluación
8.1. Reconoce los elementos de las bases de datos analizando sus funciones y valorando la utilidad de sistemas gestores.
Criterios de evaluación:
- Se han analizado los distintos sistemas lógicos de almacenamiento y sus funciones.
- Se han identificado los distintos tipos de bases de datos según el modelo de datos utilizado.
- Se han identificado los distintos tipos de bases de datos en función de la ubicación de la información.
- Se ha reconocido la utilidad de un sistema gestor de bases de datos.
- Se ha descrito la función de cada uno de los elementos de un sistema gestor de bases de datos.
- Se han clasificado los sistemas gestores de bases de datos.
8.2. Diseña modelos lógicos normalizados interpretando diagramas entidad/relación.
Criterios de evaluación:
- Se ha identificado el significado de la simbología propia de los diagramas entidad/ relación.
- Se han utilizado herramientas gráficas para representar el diseño lógico.
- Se han identificado las tablas del diseño lógico.
- Se han identificado los campos que forman parte de las tablas del diseño lógico.
- Se han identificado las relaciones entre las tablas del diseño lógico.
- Se han definido los campos clave.
- Se han aplicado las reglas de integridad.
- Se han aplicado las reglas de normalización hasta un nivel adecuado.
- Se han identificado y documentado las restricciones que no pueden plasmarse en el diseño lógico.
8.3. Realiza el diseño físico de bases de datos utilizando asistentes, herramientas gráficas y el lenguaje de definición de datos.
Criterios de evaluación:
- Se han definido las estructuras físicas de almacenamiento.
- Se han creado tablas.
- Se han seleccionado los tipos de datos adecuados.
- Se han definido los campos clave en las tablas.
- Se han implantado todas las restricciones reflejadas en el diseño lógico.
- Se ha verificado mediante un conjunto de datos de prueba que la implementación se ajusta al modelo.
- Se han utilizado asistentes y herramientas gráficas.
- Se ha utilizado el lenguaje de definición de datos.
- Se ha definido y documentado el diccionario de datos.
8.4. Consulta la información almacenada manejando asistentes, herramientas gráficas y el lenguaje de manipulación de datos.
Criterios de evaluación:
- Se han identificado las herramientas y sentencias para realizar consultas.
- Se han realizado consultas simples sobre una tabla.
- Se han realizado consultas que generan valores de resumen.
- Se han realizado consultas sobre el contenido de varias tablas mediante composiciones internas.
- Se han realizado consultas sobre el contenido de varias tablas mediante composiciones externas.
- Se han realizado consultas con subconsultas.
- Se han valorado las ventajas e inconvenientes de las distintas opciones válidas para llevar a cabo una consulta determinada.
8.5. Modifica la información almacenada utilizando asistentes, herramientas gráficas y el lenguaje de manipulación de datos.
Criterios de evaluación:
- Se han identificado las herramientas y sentencias para modificar el contenido de la base de datos.
- Se han insertado, borrado y actualizado datos en las tablas.
- Se ha incluido en una tabla la información resultante de la ejecución de una consulta.
- Se han adoptado medidas para mantener la integridad y consistencia de la información.
- Se han diseñado guiones de sentencias para llevar a cabo tareas complejas.
- Se ha reconocido el funcionamiento de las transacciones.
- Se han anulado parcial o totalmente los cambios producidos por una transacción.
- Se han identificado los efectos de las distintas políticas de bloqueo de registros.
8.6. Ejecuta tareas de aseguramiento de la información, analizándolas y aplicandomecanismos de salvaguarda y transferencia.
Criterios de evaluación:
- Se han identificado herramientas gráficas y en línea de comandos para la administración de copias de seguridad.
- Se han realizado copias de seguridad.
- Se han restaurado copias de seguridad.
- Se han identificado las herramientas para importar y exportar datos.
- Se han exportado datos a diversos formatos.
- Se han importado datos con distintos formatos.
- Se ha interpretado correctamente la información suministrada por los mensajes de error y los ficheros de registro.
- Se ha transferido información entre sistemas gestores.
9. Contenidos básicos
- Incluídos solo como referencia
- No son aplicables en la Comunidad de Madrid
9.1. Sistemas de almacenamiento de la información:
- Ficheros (planos, indexados y acceso directo, entre otros).
- Bases de datos. Conceptos, usos y tipos según el modelo de datos, la ubicación de la información.
- Sistemas gestores de base de datos: funciones, componentes y tipos.
9.2. Diseño lógico de bases de datos:
- Modelo de datos.
- La representación del problema: los diagramas E/R entidades y relaciones. Cardinalidad. Debilidad.
- El modelo E/R ampliado.
- El modelo relacional: Terminología del modelo relacional. Características de una relación. Claves primarias y claves ajenas.
- Paso del diagrama E/R al modelo relacional.
- Normalización.
9.3. Diseño físico de bases de datos:
- Herramientas gráficas proporcionadas por el sistema gestor para la implementación de la base de datos.
- El lenguaje de definición de datos.
- Creación, modificación y eliminación de bases de datos.
- Creación, modificación y eliminación de tablas. Tipos de datos.
- Implementación de restricciones.
9.4. Realización de consultas:
- Herramientas gráficas proporcionadas por el sistema gestor para la realización deconsultas.
- La sentencia SELECT.
- Selección y ordenación de registros. Tratamiento de valores nulos.
- Consultas de resumen. Agrupamiento de registros.
- Unión de consultas.
- Composiciones internas y externas.
- Subconsultas.
9.5. Edición de los datos:
- Herramientas gráficas proporcionadas por el sistema gestor para la edición de la información.
- Las sentencias INSERT, DELETE y UPDATE.
- Subconsultas y combinaciones en órdenes de edición.
- Transacciones. Sentencias de procesamiento de transacciones.
- Acceso simultáneo a los datos: políticas de bloqueo.
9.6. Construcción de guiones:
- Introducción. Lenguaje de programación.
- Tipos de datos, identificadores, variables.
- Operadores. Estructuras de control.
9.7. Gestión de la seguridad de los datos:
- Recuperación de fallos.
- Copias de seguridad.
- Herramientas gráficas y utilidades proporcionadas por el sistema gestor para la realización y recuperación de copias de seguridad.
- Sentencias para la realización y recuperación de copias de seguridad.
- Herramientas gráficas y utilidades para importación y exportación de datos.
- Transferencia de datos entre sistemas gestores.
10. Referencias
- Formatos:
- Creado con:
- Alojado en Github