Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porRodrigo Vera López Modificado hace 9 años
1
Base de Datos I – Ing. Mary Carlota Bernal J. BASE DE DATOS I - 425501 Conversión del Modelo Entidad – Relación a Relacional
2
Base de Datos I – Modelo Relacional ANALISIS Modelo E – R Entidad Atributo IDU primario IDU secundario Relación DISEÑO Diseño Físico Tabla Columna Clave primaria (Primary Key) Clave Única (Unique Key) Clave foránea (Foreign Key) MODELO CONCEPTUAL MODELO RELACIONAL
3
Base de Datos I – Modelo Relacional Nombres de tablas El nombre en plural de la entidad es usado como el correspondiente nombre de tabla Nombre de columnas Columna nombres son idénticos a los nombres de atributo. Solo reemplace los caracteres especiales y espacios en blanco por "_" CONVENCIONES DE NOMBRES
4
Base de Datos I – Modelo Relacional Nombres cortos Para nombres de entidades de mas de una palabra: - Primer caracter de la primera palabra - Primer caracter de la segunda palabra - Ultimo caracter de la ultima palabra Ejemplo entidad PRECIO PRODUCTO produce PPO como nombre corto de la tabla Para nombres de entidades de una palabra pero mas de una silaba: - Primer caracter de la primera silaba - Primer caracter de la segunda silaba - Ultimo caracter de la ultima silaba Ejemplo para EMPLEADO seria EPO su nombre corto Para nombres de entidades de una silaba, pero mas de un carácter: - Primer caracter - Segundo caracter - Ultimo caracter
5
Base de Datos I – Modelo Relacional Asignación de nombres para claves foráneas La norma recomendada para la asignación de nombres de claves foráneas es _ _ Por ejemplo una clave foranea entre las tablas EMPLEADOS y DEPARTAMENTOS resultaria EPO_DPO_fk Asignación de nombres para columnas Claves Foráneas Las columnas que son clae foranea tienen el prefijo con el nombre corto de la tabla a la que se refieren. Esto conduce a que los nombres de las columnas con clave foranea sean por ejemplo: dpo_no
6
Base de Datos I – Modelo Relacional Procedimiento para ir de E-R a R 1.Para cada Entidad E de E-R con sus Atributos, se crea una Tabla T en R. T está compuesta de Atributos simples o atómicos. 2.Los atributos de la Clave Primaria de E son la Clave Primaria de T 3.Para cada relación 1:1 en E-R, se crea una Tabla para cada una de las Entidades participantes. Se escoge una de las tablas y se incluye una clave foránea correspondiente a la clave primaria de la otra. 4.Para cada relación 1:N en E-R, se crea una Tabla para cada una de las Entidades participantes. Se incluye como clave foránea en la entidad participante con relación 1
7
Base de Datos I – Modelo Relacional Procedimiento para ir de E-R a R 5.Para cada relación M:N se crea una tabla para representarla. Se incluye como clave foráneas las claves primarias de las entidades participantes y un atributo
8
Base de Datos I – Modelo Relacional EMPLEADO # Nro. Emp * Nombre o Direccion * Fecha nacim EMPLEADOS (EPO) pk uk1 **o***o* Nro. Emp Nombre Direccion Fecha Nacim IDU primario IDU secundario Transformación de Entidades a Diagrama de Tabla Nombre Tabla: EMPLEADOS Nombre Corto: EPO
9
Base de Datos I – Modelo Relacional YS(Y) Pk fk,uk ****** Id c2 x_id fk = y_x_fk X # id * c1 Y # id * c2 XS(X) pk**** Id c1 Diagramación de Relaciones 1:1 Cuando se transforma una relación uno a uno se crea una clave foránea y una clave única. Las columnas que son clave foránea (Foreign Key) también forman parte de la clave única (Unique Key) Si la relación es obligatoria, a un lado, la clave foránea se crea en la tabla correspondiente. Si la relación es obligatoria en ambos lados u opcional en los dos lados, puede elegir en que tabla desea crear la clave foránea. No hay norma absoluta para decidir en qué lado ponerlo en práctica.
10
Base de Datos I – Modelo Relacional Cursos(CSO) Pk fk,uk ****** código descripción ETE_cedula fk = cso_ete_fk Estudiante # cedula * nombre Curso # código * descripción Estudiantes(ETE) pk**** cedula nombre Diagramación de Relaciones 1:1
11
Base de Datos I – Modelo Relacional Diagramación para Relaciones uno a muchos
12
Base de Datos I – Modelo Relacional Estudiante(ETE) pk fk ****** cedula SCO_codigo nombre fk = ete_sco_fk Sección # código * descripción Estudiante # cedula * nombre Seccion(SCO) pk**** Código Descripcion Diagramación para Relaciones uno a muchos
13
Base de Datos I – Modelo Relacional X_YS(XY) pk,fk1 pk,fk2 **** x_id y_id X # id * c1 Y # id * c2 XS(X) pk**** Id c1 Diagramación para Relaciones M:M YS(Y) pk**** Id c2 fk1 = xy_x_fk fk2 = xy_y_fk
14
Base de Datos I – Modelo Relacional La tabla asociativa contiene todas las combinaciones que existen entre XS y YS. Esta tabla no tiene columnas distintas de las columnas de clave foránea. Estas columnas juntas forman la clave primaria. La regla para asignar un nombre a esta tabla es el nombre corto de la primera tabla (en orden alfabético) y el nombre completo de la segunda. Esto daría una relación muchos-a- muchos entre las tablas EMPLEADOS y PROYECTOS con una tabla intersección llamada EPO_PROYECTOS. Si la relación es obligatoria o no, las claves foráneas son las principales columnas por lo tanto siempre obligatoria.
15
Base de Datos I – Modelo Relacional Pdto_Pedidos(PPO) pk,fk1 pk,fk2 **** pdto_codigo pdo_codigo Producto # codigo * descripción Pedidos # código * fecha Producto(Pdto) pk**** codigo descripción Diagramación para Relaciones M:M Pedidos(Pdo) pk**** Codigo fecha fk1 = ppo_pdto_fk fk2 = ppo_pdo_fk
16
Base de Datos I – Modelo Relacional DEPARTAMENTO # Nro. Dept * Nombre EMPLEADO # Nro. Emp * Nombre o Direccion * Fecha nacim Reglas para las Relaciones
17
Base de Datos I – Modelo Relacional EMPLEADOS (EPO) pk uk1 fk1 fk2 **o**o**o**o Nro. Emp Nombre Dirección Fecha Nacim DPO_id EPO_id DEPARTAMENTOS (DPO) Pk*Nro. Dept uk*Nombre fk2=epo_epo_fk fk1=epo_dpo_fk
18
Base de Datos I – Modelo Relacional Diagramación para Relaciones no transferibles y con Identificador Único compuesto
19
Base de Datos I – Modelo Relacional BS(B) pk pk,fk ****** Id c2 a_id fk = b_a_fk A # id * c1 AS(A) pk**** Id c1 Diagramación para Relaciones con Identificador Único Compuesto en cascada B # id * c2 C # id * c3 CS(C) Pk pk,fk ******** Id c3 b_id b_a_id fk = c_b_fk
20
Base de Datos I – Modelo Relacional
21
Implementación de un Arco
22
Base de Datos I – Modelo Relacional fk1 = p_a_fk PS(P) PK FK1 FK2 **OO*O***OO*O* Id C1 C2 C3 A_Id B_Id P_tipo B # Id * C5 fk2 = p_b_fk Q o C2 R * C3 P # Id *C1 A # Id * C4 Implementación Como Supertipo
23
Base de Datos I – Modelo Relacional En la implementación como supertipo se crea una sola tabla para las entidades supertipo y subtipos. Y se le agrega una columna discriminatoria para distinguir entre las diferentes entidades subtipos Implementación Como Supertipo
24
Base de Datos I – Modelo Relacional Reglas de la Implementación como Supertipo: Tablas: Independientemente del numero de subtipos solo será creada una sola tabla. Columnas: La tabla tendrá una columna para cada atributo de la supertipo, con la opcionalidad original. La tabla también tendrá una columna para cada atributo perteneciente a la subtipo pero las columnas son colocada como opcionales. Adicionalmente, se deberá crear una columna mandatoria que actuara como columna discriminatoria para distinguir entre las diferentes entidades subtipos. Identificadores: Los identificadores únicos serán trasladados como claves primaria y única.
25
Base de Datos I – Modelo Relacional Reglas de la Implementación como Supertipo: Relaciones: Las relaciones a nivel de supertipo son transformadas en forma usual. Las relaciones de las subtipos son implementadas como claves foráneas, pero las columnas de la clave foránea son colocadas como opcionales. Restricciones de Integridad: Para cada subtipo en particular, todas las columnas que vengan de atributos mandatorios deben ser chequeados como NOT NULL.
26
Base de Datos I – Modelo Relacional fk = q_a_fk QS(Q) PK FK **O***O* Id C1 C2 A_Id Implementación Como Subtipos B # Id * C5 Q o C2 R * C3 P # Id *C1 A # Id * C4 RS(R) PK FK1 FK2 ********** Id C1 C3 A_Id B_Id fk1 = r_a_fk fk2 = r_b_fk
27
Base de Datos I – Modelo Relacional La implantación como subtipos produce una tabla para cada subtipo. Reglas de la Implementación como Subtipos: Tablas: Una tabla para cada subtipo. Columnas: La tabla tendrá una columna para cada atributo de la supertipo, con la opcionalidad original. La tabla también tendrá una columna para cada atributo perteneciente a la subtipo, con la opcionalidad original. Identificadores: El identificador único primario de la supertipo será creada como clave primaria en cada una de las tablas. Y los identificadores secundarios de la supertipo serán claves únicas en cada tabla.
28
Base de Datos I – Modelo Relacional Reglas de la Implementación como Subtipos: Relaciones: Todas las tablas tendrán una clave foránea para cada relación de la supertipo con la opcionalidad original. Para las relaciones a nivel de subtipos, las claves foráneas son implementadas en la tabla correspondiente con la opcionalidad original. Constraints de Integridad: No requieren chequeos adicionales.
29
Base de Datos I – Modelo Relacional Implementación Supertipo – Subtipo como Arco
30
Base de Datos I – Modelo Relacional Reglas de Implementación: 1 Tablas: -- Varias tablas son creadas, tanto para los subtipos, así como una para el supertipo. 2 columnas: -- Cada tabla tiene una columna para todos los atributos de la entidad, con la opcionalidad original. 3 Identificadores: -- La UID principal en el nivel supertipo, crea una clave primaria para cada una de las tablas. -- Todos los otros identificadores únicos se transforman en claves únicas en sus correspondientes tablas. 4 Reglas de Integridad: -- Dos columnas adicionales se crean en la tabla supertipo. Son las columnas de clave foránea que hacen referencia a las tablas implementadas como subtipos. Las columnas son opcionales, claramente como el exterior están en un arco. las columnas clave foránea son también parte de las claves única, porque, de hecho, se implementa una relación obligatoria uno a uno. -- Una regla adicional se necesita para implementar el arco.
Presentaciones similares
© 2025 SlidePlayer.es Inc.
All rights reserved.