Paso Del Modelo Conceptual Al Modelo Relacional (1)

download Paso Del Modelo Conceptual Al Modelo Relacional (1)

of 16

Transcript of Paso Del Modelo Conceptual Al Modelo Relacional (1)

Generacin del modelo lgico a partir del modelo conceptualIng. Mara Isabel Vidal

Reglas bsicas Todo tipo de entidad se convierte en una relacin Todo tipo de interrelacin con correspondencia N:M se convierte en un relacin. Para todo tipo de interrelacin 1:N se realiza lo que se denomina propagacin de clave (regla general) o bien se crea una nueva relacin.

Transformacin de Entidades Fuertes En principio las entidades fuertes del modelo E-R son transformadas al modelo relacional siguiendo estas instrucciones: Entidades. Las entidades pasan a ser tablas. Atributos. Los atributos pasan a ser columnas. Identificadores principales. Pasan a ser claves primarias. Identificadores candidatos. Pasan a ser claves candidatas.

Esto hace que la transformacin se produzca segn este ejemplo:

Transformacin de interrelaciones N:M

Transformacin de interrelaciones 1:MDEPARTAMENTO asignado EMPLEADO

( 1,1 ) 1:N

(1 ,n )

PKEmpNo 001 002 003 004 005 Nombre Pedro Jos Maria Antonio Fernanda Cargo Ingeniero Operario Secretaria Ingeniero ingeniero Salario 1000.000 850.000 850.000 1000.000 1000.000 Comision 300.000 0 0 300.000 300.000 Fecha_desp 23/01/2010 15/06/1999 23/01/2010 23/01/2010 14/01/2008 DeptNo. 1 3 2 1 1

FK

Transformacin de interrelaciones 1:MDEPARTAMENTO asignado EMPLEADO

( 0,1 ) 1:N

(1 ,n )

PKEmpNo 001 002 003 004 005 Nombre Pedro Jos Maria Antonio Fernanda Cargo Ingeniero Operario Secretaria Ingeniero ingeniero Salario 1000.000 850.000 850.000 1000.000 1000.000 Comision 300.000 0 0 300.000 300.000 Fecha_desp 23/01/2010 15/06/1999 23/01/2010 23/01/2010 14/01/2008 DeptNo. 1 null 2 1 1

FK

Transformacin de interrelaciones N:MLas relaciones de tipo uno a varios no requieren ser transformadas en una tabla en el modelo relacional. En su lugar la tabla del lado varios (tabla relacionada) incluye como clave externa el identificador de la entidad del lado uno (tabla principal). En el caso de que el nmero mnimo de la relacin sea de cero (puede haber ejemplares de la entidad uno sin relacionar), se deber permitir valores nulos en la clave externa identificador2. En otro caso no se podrn permitir (ya que siempre habr un valor relacionado). En

Ejemplo No. 1Cod_dep nombre_d Cod_prof nombre_d apellido-pCod_curso nombre_c n_horasDEPARTAMENTO pertenece PROFESOR Imparte CURSO

( 1,1 ) 1:N

(1 ,n )

( 1,n ) N:M

(1 ,m )

1. Todo tipo de entidad se convierte en una relacin DEPARTAMENTO(cod_dep, nombre_d) PROFESOR(cod_prof, nombre_p, apellido_p) CURSO(cod_curso, nombre_c, n_horas)

Ejemplo No. 1Cod_dep nombre_d Cod_prof nombre_d apellido-pCod_curso nombre_c n_horasDEPARTAMENTO pertenece PROFESOR Imparte CURSO

( 1,1 ) 1:N

(1 ,n )

( 1,n ) N:M

(1 ,m )

2. Todo tipo de entidad cuya correspondencia es N:M se convierte en una relacin. DEPARTAMENTO(cod_dep, nombre_d) PROFESOR(cod_prof, nombre_p, apellido_p) IMPARTE (cod_prof, , cod_curso) CURSO(cod_curso, nombre_c, n_horas)

Cod_dep

nombre_d

Cod_prof

nombre_d apellido-p

Cod_curso nombre_c n_horas

DEPARTAMENTO

pertenece

PROFESOR

Imparte

CURSO

( 1,1 ) 1:N

(1 ,n )

( 1,n ) N:M

(1 ,m )

3 . Todo tipo de entidad cuya correspondencia es 1: N , tiene 2 opciones de transformacin: laprimera es la propagacin de la clave principal de la tipo de entidad que tiene la cardinalidad mxima en N, podra verse tambin como la propagacin en el sentido de la flecha, desapareciendo la interrelacin, situacin que provoca perdida de semntica. En el ejemplo anterior se toma esta opcin.

DEPARTAMENTO(cod_dep, nombre_d) PROFESOR(cod_prof, nombre_p, apellido_p, cod_dep) IMPARTE (cod_prof, , cod_curso) CURSO(cod_curso, nombre_c, n_horas)

Ejemplo No. 2: Atributos compuestosTodos los atributos compuestos deben ser descompuestos en atributos simples que quedan asociados a la misma entidad. El esquema entidad-relacin:

PERSONA (DNI, nombre, apellido1, apellido2, peso)

Ejemplo No. 3: relaciones 1:1Una interrelacion de tipo 1:1 es un caso particulas de N:M o de 1:N, por lo cual no hay una regla fija de transformacion de este tipo de modelo relacional estandar, sin embargo se presentan los criterios segn los cuales se aplican reglas de los tipos 1:1 y N:M. Si las entidades que se asocian poseen cardinalidades (0,1) puede ser conveniente transformar la interrelacin en una interrelacin.HOMBRE matrimonio MUJER

( 0,1 ) 1:N

(0 ,n )

2. Todo tipo de entidad cuya correspondencia es N:M se convierte en una relacin.HOMBRE(cod_hombre, nombre_h, apellido_h) MATRIMONIO(cod_hombre, codigo_mujer) MUJER (cod_mujer, nombre_m, apellido_m)

En este caso se transforma la interrelacin matrimonio como una relacin (aplicando la norma de las interrelaciones con cardinalidad N:M), evitando los valores nulos que apareceran en caso de propagar la clave de la tabla mujer a la tabla hombre o viceversa, ya que como ve en las cardinalidades no es obligatorio que un hombre o una mujer estn casados.

Ejemplo No. 3: relaciones 1:1Si una de las entidades que participa en la interrelacion posee cardinalidades (0,1), mientras que la otra son (1,1), conviene propagar la clave de la entidad con cardinalidades (1,1) a la tabla resultante de la entidad de la entidad de cardinalidades (0,1)Cod_prof nombre_p apellido-pCod_dep nombre_d

PROFESOR

responsable

DEPARTAMENTO

( 1,1 ) 1:1

(0 ,1 )

profesor(cod_prof, nombre_p, apellido_p) DEPARTAMENTO (cod_dep, nombre_d, cod_prof)

En este caso se tiene una interrelacin que recoge que un profesor es responsable de un departamento y supone que un profesor puede ser como mximo responsable de un departamento y como mnimo de ningn departamento, y que cada departamento tiene que tener siempre un responsable pero solo 1. en este caso propagamos la clave de profesor a la tabla de departamento, evitando as valores nulos y captando mas semntica.

Ejemplo No. 3: relaciones 1:1En caso de que ambas entidades presenten cardinalidades (1,1), se puede propagar la clave de cualquiera de ellas a la tabla resultante de la otra, teniendo en cuenta en este caso los accesos mas frecuentes y prioritarios a los datos de las tablas. Se puede plantear la propagacin de las dos claves, lo que introduce redundancias que deben ser controladas por medio de restricciones.

Ejemplo No. 4: transformacin de los atributos de las interrelaciones.Si una de las entidades que participa en la interrelacion posee cardinalidades (0,1), mientras que la otra son (1,1), conviene propagar la clave de la entidad conCod_dep nombre_d (1,1) a la tabla cardinalidades Cod_prof nombre_p apellido-p resultante de la entidad de la entidad de cardinalidades (0,1)PROFESOR responsable DEPARTAMENTO

( 1,1 ) 1:1

(0 ,1 )

profesor(cod_prof, nombre_p, apellido_p) DEPARTAMENTO (cod_dep, nombre_d, cod_prof)

En este caso se tiene una interrelacin que recoge que un profesor es responsable de un departamento y supone que un profesor puede ser como mximo responsable de un departamento y como mnimo de ningn departamento, y que cada departamento tiene que tener siempre un responsable pero solo 1. en este caso propagamos la clave de profesor a la tabla de departamento, evitando as valores nulos y captando mas semntica.

Ejemplo No. 3: Relaciones ReflexivasLas relaciones reflexivas o recursivas se tratan de la misma forma que las otras, slo que un mismo atributo puede figurar dos veces en una tabla como resultado de la transformacin.