Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

T4 RDBDesign MapeoER RDB ENVIO

Descargar como ppt, pdf o txt
Descargar como ppt, pdf o txt
Está en la página 1de 18

Fundamentos de Bases de Datos

Diseo de Bases de Datos Relacionales: Mapeo ER al Modelo Relacional

2007

Fundamentos de Bases de Datos

L. Gmez

Input:ERD
Entidades Atributos Simples, Compuestos Atributos Derivados, multivalor Relaciones 1:1, 1:N, M:N, Relaciones recursivas Entidades dbiles Participacin total Participacin opcional

Output: Esquema Relacional


Algoritmo
Tablas, Llaves primarias PK Llaves forneas FK
Employee(Fname, .. PK(SSN) FK(SUPERSSN) refernces Employee(SSN) Department(Dname, Dnumber, mgrSSN,) PK(Dnumber) FK(mgrSSN) references Employee(SSN) . .

De
Mapeo

2007

Fundamentos de Bases de Datos

L. Gmez

MAPEO ER A RELACIONES

El enfoque ER representa un diseo conceptual que representa una situacin real. Aqu consideramos el mapeo de entidades y relaciones de un diagrama ER a las relaciones (tablas) del modelo de datos relacional Aunque el mapeo es flexible de alguna forma, se definen varias heursticas o reglas mapeo.

2007

Fundamentos de Bases de Datos

L. Gmez

Reglas de Mapeo

R1 R2 R3 R4 R5 R6 R7 R8 R9

Mapeo de Entidades Mapeo de Atributos Simples y Compuestos Mapeo de relaciones 1:1 Mapeo de relaciones 1:N Mapeo de relaciones M:N Mapeo de atributos multivalor Mapeo de Entidades dbiles Mapeo de relaciones recursivas Mapeo de atributos derivados

2007

Fundamentos de Bases de Datos

L. Gmez

R1 Mapeo de entidades

Por cada entidad no dbil, crear una tabla


Tablas:
Department() Employee() Project()

2007

Fundamentos de Bases de Datos

L. Gmez

R2. Atributos Simples y Compuestos


Cada Atributo Simple y cada nodo hoja de los atributos compuestos es una columna en R. Atributos de la tabla Los atributos simples de la entidad y los componentes simples de atributos compuestos. Llave Primaria (Primary Key) Llave primaria de la entidad.
EID ESTR

ENAM E

ECITY EM P EADDR EST

ESAL EZIP

emp(EID,ENAME,ESAL,ESTR,ECITY,EST,EZIP)

2007

Fundamentos de Bases de Datos

L. Gmez

R3. CARDINALIDAD 1:1 (CARDINALITY RATIO)


Relacin de 1:1 entre clases C1 y C2 , seleccionar una de las clases (C1) e incluir la llave de C2 en C1 como una llave fornea. Incluir los atributos simples de la asociacin entre ambas clases en C1 Agregar a una de las tablas seleccionada (C1):
1. Atributos correspondientes a la llave primaria de la otra entidad involucrada en la relacin (relationship). En este caso C2 o course 2. Si existen Atributos de la relacin (relationship) C1:C2 se ponen en la tabla correspondiente a C1, TEACHER en este ejemplo. course(crsid, title) Teacher(tname, dept, crsid, .)

FK(crsid) references Course(crsid)

C2

C1

Nota: Si es posible, seleccionar a la entidad que tiene participacin total (total participation) en la relacin (relationship)
2007 Fundamentos de Bases de Datos L. Gmez 7

R4. CARDINALIDAD 1:N

Agregar a la relacin o tabla (relation) de la entidad en el lado muchos (many) del tipo de relacin (relationship) lo siguiente: Los Atributos que forman la llave primaria de la entidad en el lado uno del tipo de relacin(relationship) Si existen atributos de la relacion (relationship), se ponen en la tabla que tiene N

course(CRSID, TITLE, TNAME, .) FK(TNAME) references teacher(TNAME) teacher(TNAME, DEPT)

2007

Fundamentos de Bases de Datos

L. Gmez

R5. CARDINALIDAD M:N

R5. Relaciones N:M entre clases C1 y C2, crear una relacin R para representar la relacin entre clases. Incluir las llaves de C1 y C2 y todos los atributos simples de la relacin entre las clases. Llave Primaria Combinacin de los atributos que forman las llaves primarias de las entidades involucradas en la relacin (relationship).

EXPORT(NAME, PNUM, QTY) PK(NAME,PNUM) FK(NAME) references COUNTRY(NAME) FK(PNUM) references PRODUCT(PNUM)
2007 Fundamentos de Bases de Datos L. Gmez 9

R6. Atributos Multivalor (Multivalued)


Crear una tabla para el atributo multivalor que incluya la llave de la entidad: C(keyOfC, attrOfC) hobbies(keyOfC, hobby) FK(keyOfC) references C(keyOfC) La llave de la relacin Hobbies es una llave compuesta que consiste de la llave de la clase y el atributo multivalor. Notar que la restriccin de integridad referencial se debe mantener

hobbies
2007 Fundamentos de Bases de Datos L. Gmez 10

R7. Entidad Dbil (Weak Entity)

Atributos. Atributos simples y componentes simples de atributos compuestos de la misma entidad y los atributos correspondientes a la llave primaria de la entidad duea (strong entity). Llave Primaria (Primary Key) Combinacin de los atributos de la llave primaria de la entidad duea y el discriminador (llave parcial [partial key]) de la entidad dbil.

dep(EMPID, FNAME, BDATE, SEX)


2007 Fundamentos de Bases de Datos L. Gmez 11

Rel. Recursivas y Atributos Derivados

R8 Utilizar las reglas R3, R4 y R5 de acuerdo a la cardinalidad 1:1, 1:N o M:N. La llave fornea hace referencia a la misma tabla. Tabla(llave, attr2, attr3, llaveforanea, attrel) PK(llave) FK(llaveforanea) references Tabla(llave) R9 Los attributos derivados no se representan en el modelo relacional. Se deben codificar dentro de la aplicacin para calcularse.

2007

Fundamentos de Bases de Datos

L. Gmez

12

Reglas de Mapeo

R1 Mapeo de Entidades Crear tabla R2 Mapeo de Atributos Simples y Compuestos Columnas en la tabla R3 Mapeo de relaciones 1:1 Llave fornea en una de las tablas R4 Mapeo de relaciones 1:N Llave fornea del lado N R5 Mapeo de relaciones M:N Crear una tabla con 2 llaves forneas

R6 Mapeo de atributos multivalor Una nueva tabla con PK y atributo multivalor R7 Mapeo de Entidades dbiles Una nueva tabla mas la llave primaria de entidad duea R8 Mapeo de relaciones recursivas Llaves forneas que referencan a la misma tabla R9 Mapeo de atributos derivados No se representan en el modelo
L. Gmez 13

2007

Fundamentos de Bases de Datos

Resumen de reglas de Mapeo


R1. Cada entidad o clase se traduce como relacin R directamente. R2. Cada Atributo Simple y cada nodo hoja de los atributos compuestos es una columna en R. R3. Relacin de 1:1 entre clases C1 y C2 , seleccionar una de las clases (C1) preferentemente aquella con participacin total e incluir la llave de C2 en C1 como una llave fornea. Incluir los atributos simples de la asociacin entre ambas clases en C1 R4. Relaciones 1:N entre clases C1 y C2, seleccionar la clase en el lado N de la relacin (C1). Incluir la llave de C2 y atributos simples de la relacin entre las clases en C1 R5. Relaciones N:M entre clases C1 y C2, crear una relacin R para representar la relacin entre clases. Incluir las llaves de C1 y C2 y todos los atributos simples de la relacin entre las clases. La llave de la relacin R es una llave compuesta que incluye las llaves de C1 y C2. Atributos MV de la relacin entre clases se traducen en una relacin separada (R6)
2007 Fundamentos de Bases de Datos L. Gmez 14

Resumen de reglas de Mapeo


R6. Cada atributo multivalor (multivalued) (MV) de la clase C es puesto en una relacin separada agregando la llave de C R7. Para cada entidad dbil E1 con entidad duea E2, crear una relacin R. Incluir los atributos simples de la entidad dbil y de la relacin entre entidades.Incluir la llave de E2 y la llave parcial de E1. La llave de R es la combinacin de las llaves de E1 y E2 R8. Utilizar las reglas R3, R4 y R5 de acuerdo a la cardinalidad 1:1, 1:N o M:N. La llave fornea hace referencia a la misma tabla. R9. No se mapean al modelo relacional

2007

Fundamentos de Bases de Datos

L. Gmez

15

EJERCICIO DE MAPEO

Mapea el diagrama ER para cursos de entrenamiento de empleados al modelo relacional.

2007

Fundamentos de Bases de Datos

L. Gmez

16

EJEMPLO DE DDL
El GO permite ejecutar el bloque de Cdigo que esta antes de l

2 tipos de ndice: - CLUSTERED: OPTIMIZADO PARA TRABAJAR CON RANGOS NONCLUSTERED: Indice normal. Consume Menos espacio que el Anterior.

Constraint, significa restriccion. Todas las reglas de la normaLizacion se implementan en SQL con el uso de restricciones. Estas sirven para proteger la integridad De la base de datos
2007 Fundamentos de Bases de Datos L. Gmez 17

SEGUNDO EJEMPLO DDL

Crea un ndice. Recuerde Que los PK crean uno de Forma automtica

Este bloque de codigo CREA LA RELACION. Segun Las reglas de mapeo, esto se coloca en el lado MUCHOS, como en este caso

Este ejemplo presenta el mapeo de una relacin 1:N


2007 Fundamentos de Bases de Datos L. Gmez 18

También podría gustarte