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

Slides:



Advertisements
Presentaciones similares
Diseño de Bases de Datos
Advertisements

Fundamentos de Bases de Datos
Modelo Entidad Relación
Bases de Datos Modelo Relacional.
Elementos para Interpretar el Modelo Conceptual de Datos
Modelos de Datos Modelado y Diseño de Bases de Datos
Base de Datos II Modelo Relacional.
Modelo Entidad Relación E-R
Sistemas de Bases de Datos I
Ejercicio 0 En un banco de plaza se desea registrar los clientes (cédula, nombre y dirección) que poseen cuentas. De las cuentas se sabe los clientes que.
Métrica v2.1 Técnicas: Modelado de datos (Parte 2)
MODELADO DE DATOS (PARTE 2) Viviana Poblete L. Modelo de Datos I.
Modelos de Bases de Datos
APLICACIÓN DE NUEVAS TECNOLOGÍAS EN LA CONSERVACIÓN Y ANÁLISIS DEL PATRIMONIO CULTURAL Pensar Relacionalmente: Bases de Datos Relacionales (una visión.
Restricciones de Integridad
PASO DEL ESQUEMA E-R AL MODELO RELACIONAL
Modelo Entidad Relación
Base de Datos I. El proceso por el que se definen las diferentes subclases de una superclase Ejemplo: Se requiere guardar la información de los empleados,
Diagramas.
Base de Datos I. El proceso por el que se define una superclase a través de diferentes subclase. Ejemplo: Se tiene las entidades Cuenta de Ahorro y Cuenta.
Unidad II Diseño Conceptual de una Base de Datos:
Denominado por sus siglas como: Diagrama Entidad- Relación E-R.
Creado por Edgar Codd, 1970: Artículo “A Relational Model of Data for Large Shared Data Banks”. EL MODELO RELACIONAL.
Modelo entidad-relación extendido EER L.I. José de Jesús Eduardo Barrientos Avalos.
Base de Datos I – Ing. Mary Carlota Bernal J. BASE DE DATOS I Conversión del Modelo Entidad – Relación a Relacional.
Modelo entidad-relación (continuación) L.I. Eduardo Barrientos Avalos.
Taller de Sistemas de Programas Clase 4 Dpto. de Computación y T.I.
Diagrama de Clases SPI 2016.
BASES DE DATOS Base de Datos es un conjunto de datos relacionados entre sí y que tienen un significado implícito”. Ramez Elmasri y Shamkant B. Navathe.
Normalización Consiste en designar y aplicar una serie de reglas a las relaciones obtenidas tras el paso del modelo entidad- relación al modelo relacional.
1 Modelo ERE Universidad de los Andes Demián Gutierrez Marzo 2011.
Introducción a las bases de datos. MODELO ENTIDAD RELACIÓN (CONTINUACIÓN)  Ejemplo de cómo se lee un diagrama entidad relación:
CARDINALIDADES Base de Datos. CONCEPTO  Es el número de entidades con la cual otra entidad puede asociar mediante una relación.  Para mostrar las cardinalidades.
BASE DE DATOS I CARDINALIDAD. Cardinalidad  Es el número de entidades con la cual otra entidad puede asociar mediante una relación  Considerando una.
PROGRAMACIÓN ORIENTADA A OBJETOS SEGUNDA UNIDAD: “CLASES, OBJETOS Y MÉTODOS” IRVING YAIR SALAS CHÁVEZ ING. EN SISTEMAS COMPUTACIONALES - ITSLP.
Modelo Entidad Relación E-R Modelado y Diseño de Bases de Datos Gabriel Alberto Vásquez Muñoz Dpto. Electrónica, Instrumentación y Control.
Conceptos generales de base de datos
ESTRUTURA ORGANIZATIVA Y ORGANIGRAMA. ESTRUCTURA ORGANIZATIVA.
INTRODUCCIÓN A BASE DE DATOS
Conferencia 1. Introducción. Conceptos Básicos. Modelación Conceptual
Diseño de Bases de Datos
Base de Datos Conjunto de información, la cual ha sido organizada y presentada para servir un propósito específico.
Diseño del modelo de datos 2013
NORMALIZACION MsC (c) Esp. Alexis Ovany Torres Ch.
Paul Leger Modelo ER extendido Paul Leger
Tema El modelo entidad-relación Bibliografía:
Modelo Entidad-Relación
Construcción del modelo Entidad Relación
Esquema Relacional Pasaje a Tablas
EL MODELO RELACIONAL Creado por Edgar Codd, 1970:
Y seguimos hablando de diseño….
Prof. Daniel Obando Fuentes
DIAGRAMA DE CLASES.
MODELO RELACIONAL.
Ejercicio 0 En un banco de plaza se desea registrar los clientes (cédula, nombre y dirección) que poseen cuentas. De las cuentas se sabe los clientes que.
Ejercicios de Diagramas de Clases
15/08/2018Curso Bases de Datos1 DISEÑO DE BASES DE DATOS Francisco Moreno.
MODELOS DE DATOS Ing. Laura Bazán Díaz. Diseño de Base de Datos Modelo Conceptual Modelo E-RModelo Lógico Modelo Relacional Modelo FísicoSGBD Ing. Laura.
REDUCCIÓN DE UN DIAGRAMA E-R A TABLAS
Bases de datos relacionadas...2
Base de datos simples, relaciones Cardinalidad Claves.
Modelo de entidad-relación
CC Bases de Datos Otoño Clase 3: Modelo Entidad-Relación (II)
Ing. Francisco Rodríguez
¿Qué es una Base de Datos? Es un conjunto de datos almacenados. Su esquema es el siguiente : Tabla Persona Base de Datos Tabla Profesión.
Generalización y Especialización Presentado Por: Presentado Por: Jenny Pereira Leonardo Espitia Jonathan.
ALGEBRA RELACIONAL UNIDAD 3 ALGEBRA RELACIONAL. INTRODUCCIÓN Se forma a partir de la matemática formal Creada por Edgar Frank Codd en 1972 Concede comportamineto.
Access Este programa permite manipular datos en forma de tablas, realizar cálculos complejos con fórmulas y funciones, incluso dibujar distintos tipos.
Unida III: Análisis y Diseño de Sistemas Orientado a Objetos
Base de Datos Ing. Ricardo Tillero UNIDAD 3: NORMALIZACIÓN.
Transcripción de la presentación:

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

2 Transformación del Modelo ERE al Modelo Relacional ● ¿Por que es necesario transformar del modelo ERE al modelo Relacional? Lug ares Departamento Códi go Nom bre Cliente RIF Nomb re Servicio pre sta Código Nombr e Fecha NM Empleado Céd ula Telé fono Nom bre per ten ece N 1 Departamento (Código, Nombre) Cliente (RIF, Nombre) Servicio (Código, Nombre) Empleado (Cédula, Nombre, Teléfono, CodDpto) Presta (CódDpto, CodServ, RIF, Fecha) Base de Datos Relacional Así como existe una relación entre una clase de un diagrama de clases y el código, también existe una relación entre una entidad (o un vínculo) de un diagrama ERE o una clase y el modelo relacional

3 ¿Por que es Necesaria la Transformación? ● El modelo ERE es un modelo de datos conceptual de alto nivel. ● Facilita las tareas de diseño conceptual de bases de datos. ● Es necesario traducirlo a un esquema que sea compatible con un SGBD. ● El Modelo Relacional es utilizado por la mayoría de los SGBD existentes en el mercado.

4 Transformación del Modelo ER al Modelo Relacional ● Modelo Entidad Relación (Básico), transformación al modelo Relacional de: – Entidades (no débiles) – Entidades Débiles – Vínculos 1:N – Vínculos 1:1 – Vínculos M:N – Atributos Multivaluados – Vínculos n-arios Definir una serie de esquemas de relaciones equivalentes

5 Transformación de Entidades (Paso 1) Empleado (Cédula, PrimNombre, PrimApellido, SegApellido, Teléfono) CPAtributo compuesto Nombre Empleado Cédula TeléfonoNombre PrimNombre PrimApellido SegApellido

6 Transformación de Entidades (Paso 1) En caso de que más de un atributo sea parte de la clave primaria: Proyecto (Número_Proyecto, Nombre_Proyecto, Descripción_Proyecto) CP Compuesta Proyecto Numero_Proyect o Descripción_Proye cto Nombre_Proyect o

7 Transformación de Entidades (Paso 1) ● Para cada tipo normal (no débil) de entidad E del modelo ERE se define una relación R. ● En la relación R se incluyen todos los atributos simples de E. ● Se incluyen en R los atributos simples que sean componentes de los atributos compuestos. ● Se eligen todos los atributos clave de E como atributos claves de R.

8 Transformación de Entidades Débiles (Paso 2) Proyecto Número_Proyec to Descripción_Pro yecto Nombre_Proyec to Código_Hito Descripción_ Hito Fecha_Hito Hito es_p arte_ de N1 Hito (Número_Proyecto, Nombre_Proyecto, Código_Hito, Fecha_Hito, Descripción_Hito) Proyecto (Número_Proyecto, Nombre_Proyecto, Descripción_Proyecto)

9 Transformación de Entidades Débiles (Paso 2) Hito (Número_Proyecto, Nombre_Proyecto, Código_Hito, Fecha_Hito, Descripción_Hito) Proyecto (Número_Proyecto, Nombre_Proyecto, Descripción_Proyecto) Podría verse como una composición también

10 Transformación de Entidades Débiles (Paso 2) ● Para cada entidad débil D del modelo ERE y su respectivo vínculo con su entidad propietaria E se define una relación R. ● La relación R tiene todos los atributos de la entidad débil D más los atributos que conforman la clave primaria de la entidad propietaria E. ● La clave primaria de la relación R está formada por los atributos de la clave primaria de la entidad propietaria E más los atributos de la clave parcial de D.

11 Transformación de Vínculos 1:N (Paso 3) Departamento (Número_Dpto, Nombre_Dpto) Empleado (Cédula, PrimNombre, PrimApellido, SegApellido, Teléfono, Numero_Dpto) perte nece_ a N 1 Empleado Cédula Teléfon o Nombre PrimNom bre PrimApelli do SegApelli do Departament o Numero_ Dpto Nombre_ Dpto

12 Transformación de Vínculos 1:N (Paso 3) Departamento (Número_Dpto, Nombre_Dpto) Empleado (Cédula, PrimNombre, PrimApellido, SegApellido, Teléfono, Numero_Dpto)

13 Transformación de Vínculos 1:N (Paso 3) ● Para cada vinculo 1:N entre dos entidades (no débiles) E y F donde F está del lado N del vínculo, se añade a la relación correspondiente a la entidad F de alguna de las entidades la clave primaria de la otra entidad relacionada.

14 Transformación de Vínculos 1:1 (Paso 4) tiene_j efe 11 Empleado Cédula TeléfonoNombre PrimNom bre PrimApelli do SegApelli do Departamento Numero_ Dpto Nombre_ Dpto Departamento (Número_Dpto, Nombre_Dpto, Cédula_Jefe) Empleado (Cédula, PrimNombre, PrimApellido, SegApellido, Teléfono)

15 Transformación de Vínculos 1:1 (Paso 4) Departamento (Número_Dpto, Nombre_Dpto, Cédula_Jefe) Empleado (Cédula, PrimNombre, PrimApellido, SegApellido, Teléfono)

16 Transformación de Vínculos 1:1 (Paso 4) ● Para cada vinculo 1:1 entre dos entidades (no débiles) E y F se añade a la relación de alguna de las entidades, a modo de clave foránea, la clave primaria de la otra entidad relacionada. ● Se especifica una restricción que define que la clave foránea añadida debe ser única (no se puede repetir, porque de hacerlo entonces sería una relación 1:N

17 Trabaja_en (Cédula, Número_Proyecto, Horas) Empleado (Cédula, PrimNombre, PrimApellido, SegApellido, Teléfono) Proyecto (Número_Proyecto, Nombre_Proyecto) Transformación de Vínculos M:N (Paso 5) trab aja_ en NM Empleado Cédula Teléfon o Nombre PrimNom bre PrimApelli do SegApelli do Proyecto Numero_Proy ecto Nombre_Proy ecto Horas ¿Cuantas veces puede un empleado trabajar en un proyecto? O bien, ¿Cuántos registros puedo tener en Trabaja_En para un mismo empleado y proyecto?

18 Transformación de Vínculos M:N (Paso 5) Trabaja_en (Cédula, Número_Proyecto, Horas) Empleado (Cédula, PrimNombre, PrimApellido, SegApellido, Teléfono) Proyecto (Número_Proyecto, Nombre_Proyecto)

19 Transformación de Vínculos M:N (Paso 5) estacio nado_e n NM Avion Siglas Peso_M ax Num_M otores Hangar Código Ubicació n Fecha_ Ent Fecha_ Sal ¿Cuantas veces puede un Avión estar estacionado en un hangar? O bien, ¿Cuántos registros puedo tener en Estacionado_En para un mismo Avión y Hangar?

20 Transformación de Vínculos M:N (Paso 5) ● Para cada vinculo M:N entre dos entidades se crea una relación R. ● Los atributos de la relación R serán las claves primarias de las entidades relacionadas mas los atributos propios del vinculo. ● La clave primaria de la relación R será el conjunto de todos los atributos que sean claves primarias de las entidades relacionadas.

21 Lugares_Dptos (Numero_Dpto, Lugar) Transformación de Atributos Multivaluados (Paso 6) Departamento (Número_Dpto, Nombre_Dpto) Lugares Departamento Numero_Dp to Nombre_Dp to

22 Atributo Multivaluado / Compuesto Grupo Repetitivo Transformación de Atributos Multivaluados (Paso 6)

23 Transformación de Atributos Multivaluados (Paso 6) ● Para cada atributo multivaluado se creará una relación R. ● Los atributos de la relación R serán la clave primaria de las entidad a la cual pertenece el atributo multivaluado más el (o los) atributos correspondientes al atributo multivaluado. ● La clave primaria de la relación R será la clave primaria de la entidad a la cual pertenece el atributo multivaluado más el (o los) atributos correspondientes al atributo multivaluado

24 Presta (Numero_Dpto, Código_Servicio, RIF, Fecha) Transformación de Vínculos n-arios (paso 7) Lugares Departament o Numero_ Dpto Nombre_ Dpto Cliente RIF Nombre_ Cliente Servicio presta Código_Se rvicio Nombre_S ervicio Fecha NM ¡¡¡Recordar los vínculos n-arios pueden ser nocivos para la salud!!!

25 Transformación de Vínculos n-arios (paso 7) Presta (Numero_Dpto, Código_Servicio, RIF, Fecha) ¡¡¡Recordar los vínculos n-arios pueden ser nocivos para la salud!!!

26 Transformación de Vínculos n-arios (paso 7) ● Para cada vinculo M:N entre tres o más entidades se crea una relación R. ● Los atributos de la relación R serán las claves primarias de todas las entidades relacionadas más los atributos propios del vinculo. ● La clave primaria de la relación R será el conjunto de todos los atributos que sean claves primarias de todas las entidades relacionadas.

27 Transformación del Modelo ERE al Modelo Relacional ● Modelo Entidad Relación (Extendido), transformación al modelo Relacional de: – Generalización (o Especialización) – Categorización Definir una serie de esquemas de relaciones equivalentes

28 Transformación de una Generalización (Paso 8) Persona Cédula Nombre Apellido Direcci ón O EmpleadoEstudianteProfesor Salario Carrera Costo_ Hora E (Entidad Padre, Entidad Generalizada) E i (Entidades Especializadas ) Usando un diagrama de clases...

29 Transformación de una Generalización (Paso 8)... o bien...

30 Transformación de una Generalización (Paso 8) Existen cuatro estrategias para transformar una relación de generalización (o especialización) al modelo Relacional

31 Generalización (Paso 8 / Estrategia 1) ● Estrategia 1: Crear una relación R para la entidad padre E y una relación R i para cada entidad especializada E i. – La relación R tiene todos los atributos de la entidad E. – Cada relación R i tiene todos los atributos de la entidad E i correspondiente. – Todas las relaciones (tanto R como cada R i ) comparten la misma clave primaria de la entidad padre E.

32 Generalización (Paso 8 / Estrategia 1) Persona Cédu la Nombr e Apellid o Direc ción O Emplead o Estudiant e Profesor Salario Carrera Costo _Hora Persona (Cédula, Nombre, Apellido, Dirección) Empleado (Cédula, Salario) Profesor (Cédula, Costo_Hora) Estudiante (Cédula, Carrera) Esta estrategia funciona tanto para subclases que se traslapan como para subclases disjuntas y para especializaciones totales o parciales Persona Empleado Estudiante

33 Generalización (Paso 8 / Estrategia 2) ● Estrategia 2: Crear una relación R i para cada entidad especializada E i. – Cada relación R i tiene todos los atributos de la entidad E i correspondiente más los atributos de la entidad padre E. – La clave primaria de cada relación R i es la clave primaria de la entidad padre E.

34 Generalización (Paso 8 / Estrategia 2) Empleado (Cédula, Nombre, Apellido, Dirección, Salario) Profesor (Cédula, Nombre, Apellido, Dirección, Costo_Hora) Estudiante (Cédula, Nombre, Apellido, Dirección, Carrera) Persona Cédu la Nombr e Apellid o Direc ción d Emplead o Estudiant e Profesor Salario Carrera Costo _Hora Aplica para especializaciones disjuntas y totales

35 Generalización (Paso 8 / Estrategia 3) ● Estrategia 3: Utilizar una misma relación R para la entidad padre E y para las entidades especializadas E i. – La relación R tiene todos los atributos de la entidad padre E más todos los atributos todas las entidades especializadas E i. – Se crea un atributo adicional que define el “tipo” de entidad E i que representa una tupla en particular. – Aplica sólo a casos donde las subclases son disjuntas.

36 Generalización (Paso 8 / Estrategia 3) Persona (Cédula, Nombre, Apellido, Dirección,Tipo, Salario, Costo_Hora, Carrera) Donde Tipo puede ser 0 para la subclase Empleado, 1 para la subclase Profesor o 2 para la subclase Estudiante Persona Cédu la Nombr e Apellid o Direc ción d Emplead o Estudiant e Profesor Salario Carrera Costo _Hora Aplica solo para especializacione s disjuntas

37 Generalización (Paso 8 / Estrategia 4) ● Estrategia 4: Utilizar una misma relación R para la entidad padre E y para las entidades especializadas E i. (Similar a la estrategia 3). – La relación R tiene todos los atributos de la entidad padre E más todos los atributos todas las entidades especializadas E i. (Similar a 3) – Se crea un atributo booleano adicional por cada entidad especializada que define si una tupla en particular pertenece dicha entidad.

38 Generalización (Paso 8 / Estrategia 4) Persona (Cédula, Nombre, Apellido, Dirección, Es_Empleado, Salario, Es_Profesor, Costo_Hora, Es_Estudiante, Carrera) Los atributos “Es_*” son verdaderos para una tupla si esta es una la clase especializada de la entidad correspondiente Persona Cédu la Nombr e Apellid o Direc ción d Emplead o Estudiant e Profesor Salario Carrera Costo _Hora Aplica para especializacione s disjuntas y traslapadas

39 Transformación de una Categorización (Paso 9) Persona Cédul a Nombr e Apellid o Direc ción U Cuenta Habiente Compañía Direc ción RIF Nombr e C1C1 C2C2 Banco tiene cuen ta en Usando un diagrama de clases...

40 Transformación de una Categorización (Paso 9) Existen dos casos posibles al transformar una relación de categorización al modelo Relacional

41 Transformación de una Categorización (Paso 9 / Caso 1) ● Caso 1: Las superclases de la categoría tienen diferentes claves primarias. – Se crea una relación R que corresponda a la categoría y se asigna una clave sustituta arbitraria. – Se añade la clave sustituta a modo de clave foránea a cada una de las relaciones Ri que correspondan a las superclases de la categoría. Claves primarias de las superclases no compatibles

42 Transformación de una Categorización (Paso 9 / Caso 1) Persona Cédul a Nombr e Apellid o Direc ción U Cuenta Habiente Compañía Direc ción RIF Nombr e C1C1 C2C2 Banco tiene cuen ta en Persona (Cédula, Nombre, Apellido, Dirección, IdCuentaHabiente) Compañía (RIF, Nombre, IdCuentaHabiente) CuentaHabiente (IdCuentaHabiente)

43 Transformación de una Categorización (Paso 9 / Caso 2) ● Caso 2: Las superclases de la categoría tienen la misma clave primaria. – Se crea una relación R que corresponda a la categoría y se le asigna como atributo de clave primaria la clave común a todas las superclases de la categoría. Claves primarias compatibles entre las superclases

44 Transformación de una Categorización (Paso 9 / Caso 2) Auto Matrí cula Marca A Modelo A Color U Vehículo Registrado Camión Peso Matrí cula Modelo C C1C1 C2C2 Persona pose e NumEj es... o bien usando un diagrama de clases...

45 Transformación de una Categorización (Paso 9 / Caso 2)... se transforma al modelo relacional de la siguiente forma...

46 Gracias ¡Gracias!

47 Transformación de una Categorización (Paso 9 / Caso 2) Auto (Matrícula, MarcaA, ModeloA, Color) Camión (Matrícula, ModeloC, NumEjes, Peso) Vehículo_Registrado (Matrícula) Auto Matrí cula Marca A Modelo A Color U Vehículo Registrado Camión Peso Matrí cula Modelo C C1C1 C2C2 Persona pose e NumEj es