domingo, 13 de julio de 2014

DISEÑO LÓGICO DE BASES DE DATOS: OBTENCIÓN DEL MODELO LÓGICO A PARTIR DEL CONCEPTUAL




. El proceso de concepción, diseño y creación de una BD requiere una serie de pasos
. Origen: Visión conceptual del problema, representada mediante el Modelo de Entidad-Relación (esquema conceptual)
. Resultado final: implementación lógica, y concreción en diseño físico en función de un SGBD concreto
. Concepto previo: entidad fuerte y débil, tipos de dependencia
. Entidad débil: no puede existir sin participar en la relación; no puede ser unívocamte identificada solamente por sus atributos
. Dependencia por existencia: Las ocurrencias de la ent débil pueden identificarse mediante atributo id clave sin identificar la entidad fuerte relacionada
. Dependencia por identidad: La entidad débil no puede ser identificada sin la entidad fuerte relacionada

. Transformación de entidadesà Cada entidad del modelo conceptual se transforma en una relación o tabla con estructura relacional
. Transformación de atributosà Los atributos convencionales se transforman en campos de la relación con el dominio que tuvieran asignado
.Transformación de relaciones
Relaciones 1:1
. Será necesario crear una nueva tabla si…
. Las cardinalidades mínimas son cero (ambas)
. Evitará valores nulos en claves ajenas y mantendrá simetría natural (*)
(*) Independencia entidades tablas separadas
. La relación tiene atributos propios
. Se prevé posterior variación cardinalidades
. Si solo una de las cardinalidades mínimas es ceroà propagar clave de la obligatoria a la que no lo es
. Si todas las card. mínimas son 1 (se dice que las 2 ent. participan de forma completa)..
. Si las entidades tienen el mismo identificador...
. Se transforman en una única tabla
. Atributos: concatenación atrib. de las 2
. Si tienen diferente identificador
. Cada entidad se transforma en una tabla
. Se propaga la clave de cq a la otra (según frecuencia acceso,prioridades,..)
Relaciones 1:N
. Si ambas entidades son fuerte à Se propaga la clave
. Una entidad débil y otra fuerte
. Dependencia por existenciaà se propaga la clave
. Dependencia por identificador
. Se propaga la clave
. Además, a la clave primaria de tabla cardinal N se le añade la clave de cardinal 1
Relaciones N:M
. Se crea una tabla como consecuencia de la relación
. Tendrá como clave primaria la concatenación de los identificadores de las entidades relacionadas
Relaciones ternariasà Igual que el caso de las relaciones N:M
Relaciones reflexivas
. Son aquellas relaciones 1:N en las que participa una única entidad
. Se transforma utilizando la propagación de la clave, aunque renombrando el nombre del identificador
. Transformac. de jerarquías
. El modelo lógico relacional no puede representar directamente supertipos y subtiposà3 métodos de transformación
. Método 1: Crear tablas diferentes
. Una tabla para el supertipo, su clave primaria el identificador
. Una tabla para c/u de los subtipos, que tengan el id del supertipo como clave ajena
. Método 2: Tablas para cada subtipo
. Una tabla para cada subtipo
. Los atributos comunes aparecen en todos los subtipos
. La clave primaria para cada tabla es el identificador del supertipo
. Método 3: Todo en una tabla
. Agrupar en una tabla todos los atributos de la entidad supertipo y los subtipos
. La clave primaria es el identificador de la entidad
. Añadir atributo (discriminante de la jerarquía) q dice el subtipo de cada ocurrencia
. Transformac. de relaciones exclusivas
. “Caso particular”:si para un id se da una ocurrencia en una entidad,no se puede dar para otras con que tb está relacionada
. P.ej. dada la relación “edita”,y las entidades libro, editorial y universidad, suponer existe exclusividad en edición de un libro: por parte de editorial o universidad
. Si se transforma la relación 1:N con id’s propagados: comprobar que si una clave toma valor,las otras deberán ser nulas (*)
(*) Es decir, hay que comprobar que una y sólo una de esas claves es nula en cada ocurrencia
. Si se ha transformado la relación creando tablas nuevas,comprobarlo en las tablas resultado de transformar las relaciones
. Soportar relaciones exclusivas exige definir (“por fuera” del modelo) las restricciones pertinentes en cada caso