Publicado el 16 de Diciembre del 2019
1.045 visualizaciones desde el 16 de Diciembre del 2019
2,9 MB
39 paginas
Creado hace 7a (30/11/2016)
[4] Diseño lógico de bases de
datos
Unidad 3) Modelo Relacional
Gestión de Bases de Datos, ciclo de ASIR
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
[4.3] Conversión de
diagramas E/R a Diagramas
Relacionales
Unidad 3) Modelo Relacional
Gestión de Bases de Datos, ciclo de ASIR
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Conversión de Entidades Fuertes
• Las Entidades Fuertes pasan a ser Tablas
• Los atributos serán columnas
• Los identificadores serán claves primarias
• Los identificadores alternativos serán claves alternativas
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Conversión de Entidades Fuertes
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones
• Las relaciones son más difíciles de traducir
• Las bases de datos relacionales solo pueden representar
relaciones 1 a n ó 1 a 1
• Hay que estudiar la cardinalidad de la relación para
determinar el paso
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones n a n
• Si la cardinalidad máxima en ambos extremos es n, la relación
se convierte en una nueva tabla
• Sus atributos son columnas de esa tabla
• Se coloca también como columnas de esa tabla, las claves de
las tablas relacionadas
• Cada columna procedente de tabla relacionada será una clave
secundaria de esa tabla
• La clave principal está formada por el conjunto de columnas
que son claves secundarias
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones n a n.
Con mínima 1 a 1
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones n a n.
Con mínima 0 a 0
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones n a n.
Con mínima 0 a 1
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones n-arias
• Son relaciones de más de dos entidades
• Se crea una tabla para representar esa relación
• Los atributos de la relación son columnas de la tabla
• Las claves principales de las tablas se añaden como
columnas con clave secundaria
• La clave principal la forman las columnas añadidas
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones n-arias
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones 1 a n
• En este caso la relación no se convierte en tabla
• Se añade la clave del lado “1” (tabla principal) como nueva
columna de la tabla del lado “n” (tabla secundaria)
• La columna añadida se convierte en clave secundaria
• Si la relación tiene atributos se colocan como nuevas
columnas de la tabla secundaria
• Si la cardinalidad mínima del lado “principal” es 1, a la
clave secundaria se le añade una restricción NOT NULL.
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones (0,1) a (0,n)
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones (0,1) a (1,n)
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones (1,1) a (1,n)
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones (1,1) a (1,n)
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones 1 a 1
• En este caso las máximas son en ambos lados “1”
• Si las mínimas también son 1, se habla de relaciones 1 a 1
• Tenemos dos posibles soluciones
• Unir ambas entidades en una única tabla
• Copiar la clave principal de una tabla en la otra tabla
• Hay que estar atentos a las restricciones
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones 1 a 1.
Unir en una tabla
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones 1 a 1.
Copiar clave
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones 0 a 1
• En este caso las máximas son en ambos lados “1” y hay
una mínima que es un “0”
• Se añade a la tabla del lado “0”, la clave principal del lado
“1”
• La columna añadida es clave secundaria y además clave
alternativa
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones 0 a 1
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones 0 a 0
• En este caso las mínimas en ambos caso son 0 y las
máximas 1
• Hay que añadir la clave principal de un lado como nueva
columnas en el otro lado
• Esa columna añadida es clave secundaria con restricción
UNIQUE
• Para ser más eficiente, se mueve la clave del lado que
está más cerca de ser un 1
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones 0 a 0
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones recursivas
• En realidad se convierten igual que las relaciones
normales
• Solo hay que tener en cuenta que la tabla relacionada es
la misma
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones recursivas.
Idea conceptual
• Conviene imaginarse como si la entidad relacionada
fueran dos:
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones recursivas.
(1,n) a (1,n)
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones recursivas.
(1,n) a (0,n)
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones recursivas.
(1,n) a (1,1)
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones recursivas.
(1,n) a (0,1)
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones recursivas.
(1,1) a (1,1)
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones recursivas.
(1,1) a (0,1)
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones recursivas.
(0,1) a (0,1)
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de entidades débiles
• Las entidades débiles se traducen como cualquier
relación (1,1) a (0,n)
• Por lo tanto simplemente se pasa la clave primaria como
clave secundaria en la entidad débil (además será NOT
NULL)
• Si la clave primaria de la entidad débil ya usaba la clave
primaria de la fuerte, simplemente se marcará la misma
como clave secundaria
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones débil.
Con clave primaria independiente
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones débil.
Con clave primaria dependiente
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Relaciones ISA
• En realidad son relaciones 0 a 1 (siendo el lado 1 el de la
superentidad)
• Si las subentidades no tienen clave propia, toman como
clave primaria la de la superentidad; además será clave
secundaria
• Si sí tienen clave propia, la clave primaria de la
superentidad pasa como clave alternativa; además será
clave secundaria
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones ISA.
Subentidades sin clave propia
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Transformación de relaciones ISA.
Subentidades con clave propia
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
¡¡A practicar!!
GBD-Unidad 4-Diseño lógico de bases de datos
Jorge Sánchez, www.jorgesanchez.net
@jorgesancheznet
Comentarios de: [4] Diseño lógico de bases de datos (0)
No hay comentarios