INDICE Prologo Prefacio Parte I. Conceptos Básicos Capitulo 1. Sistema de información y Bases de Datos 1. Papel económico, social y cultural de la información 2. Cualidades de la Información 3. Conceptos de sistema de información 3.1. Definición de sistema 3.2. Conceptos de sistema de información 4. Componentes de un sistema de información 5. Sistemas de información para la gestión y sistemas de información para la ayuda a la decisión 6. De los sistemas tradicionales de ficheros a las bases de datos 7. Ventajas e inconvenientes de las bases de datos frente a los ficheros clásicos 8. Conceptos de la base de datos 9. Distintos niveles de abstracción de una base de datos Ejercicios y preguntas de repaso Lecturas recomendadas Capitulo 2. El Sistema de Gestión de la Base de Datos 1. El SGBD como interfaz entre el usuario y la base de datos 2. Conceptos y Principales Funciones de un SGBD 2.1. Función de definición o descripción 2.2. Función de manipulación 2.3. Función de control 3. Lenguajes de los SGBD 3.1. Lenguajes de definición de datos 3.2. Lenguajes para manipulación de datos 4. Otras facilidades proporcionadas por los SGBD 5. Interacción del usuario con el sistema de gestión de la base de datos 6. Funcionamiento del SGBD: Interacción con el sistema operativo 7. La estandarización de la arquitectura de los SGBD 7.1. Actividades de ISO/IEC 7.2. Actividades de Codasyl 7.3. Actividades de grupo ANSI/X3/SPARC 8. La Arquitectura ANSI/X3/SPARC y los modelos de referencia 9. El concepto de independencia físico / lógica en relación con la arquitectura Ejercicios y preguntas de repaso Lecturas recomendadas Parte II. Modelos de Datos Capitulo 3. Conceptos de Modelo de Datos 1. Introducción 2. Definición de modelos de datos 2.1. Estática 2.2. Dinámica 3. Lasa restricciones de integridad en los modelos de datos XV XVII 1 3 3 6 8 8 10 14 16 19 21 25 28 31 33 35 38 39 40 42 43 45 47 51 52 54 57 59 60 60 62 71 77 79 81 83 83 86 86 87 89 4. Clasificación de los modelos de datos 5. Los modelos de datos en el diseño de bases de datos Ejercicios y preguntas de repaso Lecturas recomendadas Capitulo 4. El Modelo Entidad / Interrelación 1. Presentación e historia 2. Estática del modelo E/R 2.1. Entidad 2.2. Interrelación 2.3. Atributo 2.4. Restricciones 3. Semántica de las interrelaciones 3.1. Cardinalidades de un tipo de entidad 3.2. Dependencia en existencia y en identificación 4. Generalización y herencia 5. Dinámica del modelo E/R 5.1. El lenguaje CLEAR Ejercicios y preguntas de repaso Lecturas recomendadas Capitulo 5. El Modelo Relacional: Estática 1. Presentación y objetivos 2. Estructura del modelo relacional 2.1. Dominio y atributo 2.2. Definición formal de relación 2.3. Clases de relación 2.4. Claves 3. Restricciones 3.1. Restricciones inherentes 3.2. Restricciones semánticas 4. Esque ma de Relación y Esquema Relacional 5. El modelo relacional y la arquitectura ANSI 6. Los valores nulos en el modelo relacional 6.1. Conceptos de valor nulo 6.2. Problemas de la lógica trivaluada y valores por defecto 6.3. Lógica cuatrivaluada 6.4. Otras propuestas 7. Las 12 reglas de codd para los sistemas relacionales Ejercicios y preguntas de repaso Lecturas recomendadas Capitulo 6. Dinámica del Modelo Relacional 1. Introducción 2. Álgebra relacional 2.1. Operación de asignación y renombrado de atributos 2.2. Operadores primitivos 2.3. Operadores derivados 2.4. Operadores adicionales de consulta 2.5. Operadores relacionales con valores nulos 2.6. Operaciones adicionales de manipulación 92 96 98 99 101 101 103 103 104 107 109 110 110 111 113 114 114 117 121 123 123 129 131 133 136 138 138 139 141 146 147 149 149 151 153 156 157 159 165 167 167 168 169 171 179 184 185 188 2.7. Lenguaje algebraico ISBL 3. Calculo Relacional 3.1. Calculo relacional orientado a tuplas 3.2. Calculo relacional orientado a dominio 4. Optimización de Consultas 4.1. Recursos actuales 4.2. Sistemas copilados y sistemas interpretados 4.3. Optimización de consulta simples 4.4. Optimización de consultas múltiples 4.5. Optimización semántica Ejercicios y preguntas de repaso Lecturas recomendadas Capitulo 7. El Lenguaje SQL 1. Organismo y grupo que se ocupan de la estandarización de los lenguajes de bases de datos 2. Evolución del lenguaje SQL 3. Conceptos SQL 4. Sentencias de definición 4.1. Esquemas 4.2. Dominios 4.3. Tablas 4.4. Restricciones y reglas de integridad 4.5. Actualización de esquemas 4.6. Vistas 5. Sentencias de Manipulación 5.1. Recuperación de datos: Sentencia SELECT 5.1.1. Partes básicas 5.1.2. Combinación de tablas 5.1.3. Cláusulas WHERE 5.1.4. Clasuelas GROUP BY 5.1.5. Cláusulas HAVING 5.2. Inserción de datos: Sentencia INSERT 5.3. Borrado de datos: Sentencia DELETE 5.4. Modificación de datos: sentencia UPDATE 6. Sentencia de control: Seguridad en SQL 6.1. Confidencialidad 6.2. Disponibilidad 6.3. Integridad 6.3.1. Semántica 6.3.2. Operacional 7. SQL embebido 8. SQL dinámico 9. El lenguaje SQL3 9.1. Papeles (roles) en SQL3 9.2. Disparadores en SQL3 Ejercicios y preguntas de repaso Lecturas recomendadas Capitulo 8. Diseño Lógico de las Bases de Datos en el Modelo Relacional 188 190 190 194 197 198 199 202 208 210 210 212 215 215 216 218 219 220 220 221 223 226 227 227 228 228 232 237 242 243 244 244 245 246 246 248 248 248 249 252 255 255 257 257 260 264 265 1. Etapas de una metodología de diseño 2. Transformaciones del esquema conceptual al relacional 2.1. Las opciones de clave ajena en la transformación del ME/R al relacional 3. Grafo Relacional 4. Teoría de la Normalización 4.1. Noción intuitiva de las formas normales 4.2. Dependencias funcionales 4.3. Definición formal de las tres primeras formas normales 4.4. Descomposición de relaciones 4.5. Consideraciones finales sobre la teoría de la normalización Ejercicios y preguntas de repaso Lecturas recomendadas Capitulo 9. Modelo en Red CODASYL: estática 1. Presentación de un modelo en red 2. Propuesta CODASYL 2.1. Historia de un grupo Codasyl 2.2. Objetivos 2.3. Medios para alcanzar los objetivos 2.4. Arquitectura 3. Modelos de Datos CODASYL 3.1. Elementos del modelo 3.2. Características de los conjuntos y restricciones inherentes 3.3. Tipos de estructuras permitidas 3.4. Representación de asociaciones N: M y flexivas 4. Restricciones Semánticas en el Modelo CODASYL 4.1. Restricciones estructurales 4.1.1. Restricciones estructurales de los atributos 4.1.2. Restricciones estructurales de los conjuntos 5. El Nivel Interno del Modelo CODASYL 5.1. Modo de ubicación de los registros 5.2. Tipos de punteros 5.3. Conceptos de áreas 6. Lenguajes de Definición de Datos de CODASYL 6.1. Lenguaje de definición de datos de esquema 6.2. Lenguajes de definición de datos de los Subesquemas 6.3. Lenguaje de definición del esquema de almacenamiento Ejercicios y preguntas de repaso Lecturas recomendadas Capitulo 10. Dinámica del Modelo CODASYL 1. Introducción 1.1. Selección 1.2. Hacino 1.3. Estructura del lenguaje 2. Indicadores del registro activo 3. Selección de un registro 4. Obtención de un registro localizado 5. Actualización : sentencias de inserción, borrado y modificación 265 267 269 272 273 277 280 285 287 292 292 295 297 297 299 300 301 302 303 304 304 306 310 312 316 317 317 318 320 321 323 324 325 325 327 328 330 334 335 335 335 336 337 339 341 344 345 6. Modificación de vinculación entre registros 6.1. Sentencia de conexión (CONNECT) 6.2. Sentencia de desconexión (DISCONNECT) 6.3. Sentencia de reconexión (RECONNECT) 7. Otras Sentencias 7.1. Abrir y cerrar áreas 7.2. Ordenar los miembros de un conjunto 7.3. Guardar las claves de la base de datos 7.4. Inhibir la actualización de los IRA Ejercicios y preguntas de repaso Lecturas recomendadas Capitulo 11. El Modelo Jerárquico como un Caso Particular de los Modelos en Red 1. Introducción 2. Características de la estructura jerárquica 3. Esquemas y Ocurrencia de árbol 4. Problemas de modelo jerárquico 5. Transformaciones de un esquema E/R en un esquema jerárquico 6. La funciona de manipulación de datos 6.1. Localización o selección 6.2. La función de acción 6.3. Ejemplos de manipulación Ejercicios y preguntas de repaso Lecturas recomendadas Parte III Tendencias Capitulo 12. El Futuro de la Bases de Datos 1. Introducción 2. Evolución de la Gestión de datos 3. Nuevos Retos 3.1. Señales de preocupación 3.2. Cambios en el entorno empresarial 3.3. Nuevos tipos de aplicaciones 3.4. Avances en el hardware y las comunicaciones 4. Factores de la líneas de evolución 5. Madurez de la nueva tecnologías de bases de datos Lecturas recomendadas Capitulo 13. Sistemas de gestión de bases de objetivos 1. Introducción 2. Modelo de objetos 3. SGBD relacionales “EXTENDIDOS” VS SGBO “PUROS” 4. Características de los SGBO 4.1. Características propias de la orientación al objetivo 4.2. Características generales de los SGBD 5. Tipos de SGBO 6. Prototipos y productos 7. Estándares 7.1. SQL3 7.2. ODMG - 93 346 347 347 348 348 349 350 350 351 353 355 357 357 358 360 361 366 370 371 371 372 375 376 379 381 381 381 384 384 385 386 388 389 391 392 393 393 394 397 401 401 401 408 411 411 412 413 7.3. Comparación y convergencia de ODMG – 93 y SQL3 Ejercicios y preguntas de repaso Lecturas recomendadas Parte IV. Seguridad Capitulo 14. Seguridad en Bases de Datos 1. Introducción 2. Confidencialidad 2.1. Autorización en sistemas de bases de datos 2.2. Bases de Datos Multinivel 2.2.1. Conceptos generales 2.2.2. SGBD relacional multinivel 2.3. Confidencialidad en bases de datos avanzadas 2.3.1. Bases de datos orientadas a objetos 2.3.2. Bases de datos estadísticas 2.3.3. Bases de datos distribuidas 3. Disponibilidad 3.1. Concepto de transacción 3.1.1. Propiedades de una transacción 3.1.2. Arquitectura de un SGBD en la gestión de transacciones y recuperación 3.2. El fichero diario (LOG) 3.3. Recuperación en caliente 3.4. Recuperación en frío 3.5. Recuperación en bases de datos distribuidas 4. Integridad 4.1. Integridad semántica 4.2. Integridad operacional 4.2.1. Técnicas clásicas 4.2.2. Aspectos avanzados Ejercicios y preguntas de repaso Lecturas recomendadas Apéndices A. Sintasis del lenguaje SQL 1. Notación utilizada 2. Estática 3. Dinámica 4. Confidencialidad B. Ejemplo de Diseño de la Base de Datos Relacional 1. Planteamiento del caso 2. Diseño conceptual 3. Diseño lógico estándar C. Lenguaje CODASYL para la Definición del Esquema D. Descripción de Esquemas CODASYL 1. Planteamiento del caso 2. Solución E. Ejemplos de Diseños de Datos CODASYL 1. Planteamiento 2. Diseño en el modelo E/R transformaron a CODASYL 415 416 417 419 421 421 422 422 425 425 426 428 428 430 430 431 432 432 433 434 436 437 437 438 439 440 442 445 448 448 451 453 453 453 458 466 469 469 470 472 479 481 482 483 487 487 488 3. Definición del Esquema 4. Aplicación Acrónimos Bibliografía Índice Alfabético 491 495 499 503 511