Sistemas de Información II Tema 5. El modelo relacional

Documentos relacionados
Sistemas de Información II Tema 6. Álgebra relacional

Carlos Castillo UPF 2008

UNIDAD 3. MODELO RELACIONAL

Modelo relacional. El modelo relacional

Transformación ER Relacional para el diseño de bases de datos relacionales

id_trabajador nombre tarifa_hr tipo_de_oficio id_supv 1235 F. Aguilera 12,50 Electricista A. Calvo 13,75 Fontanero N.

Tema 5: Teoría de diseño de Bases de Datos Relacionales.

TEMA 5.- ESTRUCTURA DE DATOS RELACIONAL.

NORMALIZACIÓN DE BASES DE DATOS

Carlos A. Olarte Ligaduras de Integridad y Restricciones sobre la BD

1. Introducción: Qué es un Modelo de Datos? 2. Estática del modelo de datos relacional

Temario. Índices simples Árboles B Hashing

Bases de datos 1. Teórico: Modelo Relacional

Ing. Yim Isaias Apestegui Florentino

proceso que consiste en aplicar una serie de reglas a las relaciones obtenidas tras el paso del modelo entidad-relación al modelo relacional.

Ítems/Entidades/Objetos [sustantivos]: Objetos que existen en el mundo y que son

Unidad II: Diseño de Bases de Datos y el modelo E-R. 2.1 El Proceso de Diseño

TEMARIO. - Programa de teoría

Algebra Relacional Jos e Ram on Param a Gab ıa

ESQUEMA DE BASE DE DATOS ATROPELLOS

Introducción al álgebra relacional. Con ejemplos en SQL

Modelo Relacional: Conceptos

MODELO RELACIONAL BASE DE DATOS RELACIONALES

T ema 2. S is tem as ges tores de bas es de datos

Modelo Relacional: Conceptos

Bases de Datos SQL 1 SQL. Jorge Pérez R. Universidad de Talca, II Semestre 2006

OPERACIONES CON BASES DE DATOS OFIMÁTICAS Y CORPORATIVAS CURSO: IES GONZALO NAZARENO

En primer lugar se obtiene el modelo lógico de alto nivel, independiente del modelo de base de datos y los objetivos a conseguir son:

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 9. Reglas de Integridad

SQL. Álgebra Relacional Selección y proyección Operaciones sobre conjuntos: unión, intersección, diferencia, producto Reunión natural

- Bases de Datos - - Diseño Físico - Luis D. García

El modelo relacional

Acceso a bases de datos MySQL con PHP

ELEMENTOS DE BASES. DE DATOS Segundo Cuatrimestre Clase 4: Decisiones de diseño Pasaje a Tablas: modelo relacional

4 Integridad de datos relacional: llaves candidatas y temas relacionados.

BASES DE DATOS DSIC. Curso

BASES DE DATOS (IG18 Semipresencial) El Modelo Relacional Reglas de Integridad

Integridad y Seguridad. Integridad y Seguridad. Restricción de Dominio. Protección. Índice. create domain. Dominios

El Modelo Relacional de Bases de Datos

BASES DE DATOS TEMA 4 DISEÑO DE BASES DE DATOS RELACIONALES

Principios de Bases de Datos Relacionales, Normalización. Unidad 4

Base de Datos. Profesor: José Miguel Rubio L. P. UNIVERSIDAD CATÓLICA DE VALPARAÍSO FACULTAD DE INGENIERÍA ESCUELA DE ING.

Tema 2. Bases de Datos Relacionales

Mayo Fecha de elaboración: 28/05/2010 Fecha de última actualización: 16/06/2010. F1016 Modelado, diseño y manejo de bases de datos 1/12

Restricciones de Integridad

Temario. Índices simples Árboles B Hashing

RESTRICCIONES DE INTEGRIDAD Y DEPENDENCIAS FUNCIONALES Bases de Datos Universidad de Talca, II Semestre Jorge Pérez R.

Lenguaje SQL. SQL Structured Query Languaje. Capacidades del Lenguaje. Estructura Básica de una consulta SQL

Patrones para persistencia (I) Ingeniería del Software II

TÉCNICO SUPERIOR UNIVERSITARIO EN TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN

Universidad Nacional del Sur Departamento de Ciencias e Ingeniería de la Computación Elementos de Bases de Datos 2do. Cuatrimestre de 2004

Base de Datos. Docente: Ing. Francisco Rodríguez BASE DATOS. Resultados. Internet. Requerimientos

Lenguaje para descripción de datos

SQLModificaciones a la BD

Tema 3. El modelo Relacional

Modelo Relacional. Guido Urdaneta (Revisado por E. DeBourg, H. Corzo y A. Romero) 26 de abril de 2004

6. Integridad en Sistemas de Bases de Datos Relacionales

A.N.E.P. Consejo de Educación Técnico Profesional. Educación Media Tecnológica. Orientación INFORMÁTICA ASIGNATURA SISTEMAS DE BASES DE DATOS I

BASES DE DATOS - SQL. Javier Enciso

Normalización. Bases de Datos

Sistemas de Bases de Datos II ITS / ITSB EMT CETP

Sistemas de Bases de Datos I. Modelo Lógico Modelo Relacional

Normalización 1NF 2NF 3NF BCNF 4NF

Tema 1. Bases de datos activas

Maestría en Bioinformática. Bases de Datos y Sistemas de Información. Diseño Lógico. Ing. Alfonso Vicente, PMP alfonso.vicente@logos.com.

rg.o cm a Diseñ e o o l óg ó ico c l@ rza e b Di D s i e s ño d e b as a e s s s d e d at a o t s s r e r la l c a i c o i nal a e l s

Transformación del Modelo ERE al Modelo Relacional. Universidad de los Andes Demián Gutierrez Enero

Restricciones de Integridad

Universidad Católica San Pablo Facultad de Ingeniería y Computación Programa Profesional de Ciencia de la Computación SILABO

Integridad y Seguridad en los sistemas de Bases de Datos. Javier Escobar Luis Ramirez Omar Asprino

Modelo relacional de datos. Modelo relacional de datos. Presentación y orígenes del MR. Modelo relacional de datos

Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros

MER MR Bases de Datos

Un ejemplo simple de normalización de bases de datos relacionales (hasta 3FN)

FORMACIÓN Diseño de bases de datos relacionales

Gestión de la Información

Bases de datos. Guía de Aprendizaje Información al estudiante. 1. Datos Descriptivos

Bases de Datos I Práctica 1 Ejercicios de SQL

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE ESTUDIOS SUPERIORES CUAUTITLÁN LICENCIATURA EN INFORMÁTICA

El modelo relacional y el álgebra relacional

UNIVERSIDAD NACIONAL DE ASUNCION FACULTAD POLITÉCNICA CARRERA: LCIK MATERIA: Bases de Datos I Prof: Lic. Lilian Riveros Unidad 2: Modelo Relacional

BASES DE DATOS. DSIC. Curso Bases de Datos. Título de Ingeniero Técnico en Informática. Programación. Bases de Datos TR 3 3

2 Diseño lógico: Modelo Relacional

Introducción a las bases de datos.

Guía de Modelo Relacional y Conversión de Entidad-Relación a Relacional

Diseño de Bases de Datos Bases de Datos Documentales Grao en Información e Documentación Curso 2013/2014

Ficheros y Bases de Datos Curso Ingeniería Técnica de Informática Primer Parcial. 1-Junio Nombre:

[CASI v.0110] Pág. 1

Grado en Ingeniero en Informática Ingeniero en Computadores Sistemas de Información

Bases de Datos I. Programa de la Asignatura:

CONTENCIÓN DE CONSULTAS CON VALORES NULOS USANDO EL MÉTODO CQC

7 Diseño de Bases de Datos Relacionales: Normalización

11. Seguridad en sistemas de bases de datos

Administración de Bases de Datos (Ingeniería Técnica en Informática de Gestión)

Materia requisito: DOMINIOS COGNITIVOS (Objetos de estudio, temas y subtemas) I. INTRODUCCION A LAS BASES DE DATOS

NORMAS DE DISEÑO DE BASE DE DATOS

5/27/2013. Contenidos. Las Bases de Datos y los Sistemas (SBD) El Modelo Entidad-Relación (E-R) El Modelo Relacional Integridad de los Datos MS Access

Bases de Datos I. Cursada Clase 4: Álgebra relacional y de bolsas Información ausente Claves BASES DE DATOS I

Tema II: El modelo relacional de datos. (2.4)

Modelado de datos. Bibliografía. Representación de la información Modelos de datos Modelado semántico

Transcripción:

Sistemas de Información II Tema 5. El modelo relacional Bibliografía: Elmasri y Navathe: Fundamentos de Sistemas de Bases de Datos 3ª edición, 2002 (Capítulo 7). Garcia-Molina, Ullman y Widom: Database systems: the complete book. Prentice-Hall (Capítulo 3). Carlos Castillo UPF 2008 1

Temas de esta clase Conceptos del modelo relacional Convertir E-R a modelo relacional 2

Relación Relación tabla de datos Por eso se llaman bases de datos relacionales Título Año Duración La guerra de las galaxias 1977 123 El señor de los anillos 1 2001 178 Mar Adentro 2004 125 El viaje de Chihiro 2001 125 3

Conceptos Esquema Película(título,año,duración) Atributos Tuplas Título Año Duración La guerra de las galaxias 1977 123 El señor de los anillos 1 2001 178 Mar Adentro 2004 125 El viaje de Chihiro 2001 125 Dominio=Textos Dominio=Enteros 4

Notación Atributos A i Relación R R(A 1, A 2, A 3,..., A N ) Dominio de Ai dom(a i ) R A 1, A 2,..., A N dom A 1 dom A 2... dom A N Relación son algunas de todas las combinaciones posibles 5

Relación es un conjunto Por lo tanto, no está ordenado Notación para las tuplas t = <Mar Adentro, 2004, 125> Película Notación para subconjunto de tupla t[año,duración] = <2004, 125> 6

Dominios Restricción de dominio t[a] = <x> x dom(a) En algunos casos... NULL dom(a) En tal caso diremos que la relación acepta valores nulos 7

Claves candidatas y primarias Claves candidatas Coche NMatrícula NMotor Marca Modelo... CCA-341 91234908123 Toyota Yaris OFG-851 53489787679 Fiat Fiorino XTV-657 30752312386 Ford Mustang WGB-959 50934187123 Toyota Avensis La elección de una clave primaria es arbitraria Se escoge una que tenga pocos atributos 8

Restricciones de claves Restricción de claves únicas K claves(relación) t 1, t 2 Relación, t 1 [K] t 2 [K] NULL K K Una clave puede ser Un atributo Varios atributos (clave compuesta) Incluso toda la tupla en algunos casos (evitarlo) 9

Llaves foráneas Empleado Apellido DNI FechaNac DNI_Jefe Salario NumDept Departamento Número DNI_Jefe Dirección Trabaja_En DNI NúmProy Proyecto Número Depto Presupuesto 10

Integridad referencial Empleado Apellido DNI FechaNac DNI_Jefe Salario NumDept Departamento Número DNI_Jefe Dirección Trabaja_En DNI NúmProy Proyecto Número Depto Presupuesto 11

Mejor nombre: ID_XXX[_rol] Mejor dominio: numérico Empleado Apellido ID_emp FechaNac ID_emp_jefe Salario ID_depto Departamento ID_depto ID_emp_direct Dirección Trabaja_En ID_emp ID_proy Proyecto ID_proy Depto Presupuesto 12

Al insertar Mantener integridad referencial Insertar clave foránea en la otra tabla Rechazar la inserción Al eliminar Eliminar tuplas que apuntan a esta tupla Cascada Actualizar valores en tuplas que apuntan a esta tupla 13

Convertir Entidad-Relación en Modelo Relacional 14

Convertir Entidad-Relación Se comienza con un modelo E-R Porque es más fácil de diseñar Tiene dos conceptos: entidad y relación Traducir E-R a relacional, versión simple: 1)Cada entidad se transforma en una tabla con los mismos atributos 2)Se agregan claves donde sea necesario 3)Cada relación se transforma en una tabla en que los atributos son las claves de cada entidad participante 15

Traducción simple, paso 0 Año Apellido Película Actúa Actor Produce Estudio 16

Traducción simple, paso 1 Año Apellido Película Actúa Actor ID_Película ID_Actor ID_Estudio Produce Estudio 17

Traducción simple, paso 2 Año Apellido Película Actúa Actor ID_Película ID_Actor ID_Estudio Película ID_Película Año 1 La guerra de las galaxias 1977 2 El señor de los anillos 1 2001 3 Mar Adentro 2004 4 El viaje de Chihiro 2001 Produce Estudio Actor ID_Actor Apellido 1 Mark Hamill 2 Cristopher Lee 3 Javier Bardem 4 Hugo Weaving Estudio ID_Estudio 1 Ghibli 2 New Line Cinema 3 Lucasfilms 4 Sogecine 18

Traducción simple, paso 3 Año Apellido Película Actúa Actor ID_Película ID_Actor ID_Estudio Película ID_Película Año 1 La guerra de las galaxias 1977 2 El señor de los anillos 1 2001 3 Mar Adentro 2004 4 El viaje de Chihiro 2001 Produce Estudio Actor ID_Actor Apellido 1 Mark Hamill 2 Cristopher Lee 3 Javier Bardem 4 Hugo Weaving Estudio ID_Estudio 1 Ghibli 2 New Line Cinema 3 Lucasfilms 4 Sogecine Actúa ID_Actor 1 1 2 2 3 3 4 2 Produce ID_Película 1 3 2 2 3 4 4 1 ID_Película ID_Estudio 19

Combinar relaciones A veces es posible combinar relaciones El caso típico son las relaciones 1-N Relaciones 1-1 deberían descartarse antes Año Apellido Película N Actúa N Actor ID_Película ID_Actor ID_Estudio N Produce 1 Estudio 20

Combinando relación 1-N (a) Año Apellido Película N Actúa N Actor ID_Película N ID_Actor ID_Estudio Produce 1 Estudio Película ID_Película Año 1 La guerra de las galaxias 1977 2 El señor de los anillos 1 2001 3 Mar Adentro 2004 4 El viaje de Chihiro 2001 Actor ID_Actor Apellido 1 Mark Hamill 2 Cristopher Lee 3 Javier Bardem 4 Hugo Weaving Estudio ID_Estudio 1 Ghibli 2 New Line Cinema 3 Lucasfilms 4 Sogecine Actúa ID_Actor 1 1 2 2 3 3 4 2 ID_Película Produce ID_Película (1) ID_Estudio (N) 1 3 2 2 3 4 4 1 21

Combinando relación 1-N (b) Estudio ID_Estudio 1 Ghibli 2 New Line Cinema 3 Lucasfilms 4 Sogecine Actor ID_Actor Apellido 1 Mark Hamill 2 Cristopher Lee 3 Javier Bardem 4 Hugo Weaving Año Apellido Película N Actúa N Actor ID_Película N ID_Actor ID_Estudio Produce 1 Estudio Actúa ID_Actor 1 1 2 2 3 3 4 2 ID_Película Película ID_Película Año ID_Estudio 1 La guerra de las galaxias 1977 3 2 El señor de los anillos 1 2001 2 3 Mar Adentro 2004 4 4 El viaje de Chihiro 2001 1 Produce ID_Película (1) ID_Estudio (N) 1 3 2 2 3 4 4 1 22

Combinando relación 1-N (c) Estudio ID_Estudio 1 Ghibli 2 New Line Cinema 3 Lucasfilms 4 Sogecine Actor ID_Actor Apellido 1 Mark Hamill 2 Cristopher Lee 3 Javier Bardem 4 Hugo Weaving Año Apellido Película N Actúa N Actor ID_Película N ID_Actor ID_Estudio Produce 1 Estudio Actúa ID_Actor 1 1 2 2 3 3 4 2 ID_Película Película ID_Película Año ID_Estudio 1 La guerra de las galaxias 1977 3 2 El señor de los anillos 1 2001 2 3 Mar Adentro 2004 4 4 El viaje de Chihiro 2001 1 23

Traducción cuando hay subclases 24

E-R a relacional con subclases IDv IDp Matrícula Vehículo N Dueño 1 Propietario d Bus Camión Coche Pasajeros Ejes 25

Opción 1: directo E-R IDv Matrícula Vehículo d Bus Camión Coche N Dueño 1 Propietario Propietario IDp IDp Pasajeros Ejes Vehículo IDv Matrícula Dueño IDv IDp Bus IDv Pasajeros Camión IDv Ejes Coche IDv 26

Opción 2: orientado a objetos IDv Matrícula Vehículo d Bus Camión Coche N Dueño 1 Propietario IDp Propietario IDp Pasajeros Ejes Vehículo IDv Matrícula Bus IDv Matrícula Pasajeros Dueño IDv IDp Camión IDv Matrícula Ejes Coche IDv Matrícula Nota: La tabla vehículo existe en este caso sí y sólo si hay especialización parcial 27

Opción 3: valores nulos IDv Vehículo N Dueño 1 Propietario IDp Matrícula d Bus Camión Coche Propietario IDp Pasajeros Ejes Dueño IDv IDp Vehículo IDv Matrícula Pasajeros Ejes 28

Desventaja opción orientado a objetos Queremos pocas entidades Cuando hay entidades overlapped podríamos tener que generar todas las combinaciones posibles Barco o Barco_Pasajeros IDb NPax Barco_Carga IDb Tons NPax Pasajeros Carga Tons Barco_Pasajeros_Carga IDb NPax Tons 29

Ventaja de usar valores nulos Puede acelerar ciertas consultas, al evitar consultar varias tablas SELECT ejes FROM vehiculo,camion WHERE camion.idv=vehiculo.idv AND vehiculo.matricula='xxx-xxx'; SELECT ejes FROM camion WHERE camion.matricula='xxx-xxx'; 30

Uso de espacio extra Directo E-R Se repiten las claves primarias Orientado a objetos No se repite nada Valores nulos Se repiten todos los atributos La opción Directo E-R es una buena solución intermedia entre ambas 31

Resumen Modelo relacional Formalización de esquemas de tablas Traducción E-R a relacional es directa en muchos casos 32