Documente Academic
Documente Profesional
Documente Cultură
3) Para todo tipo de relacin 1:M se realiza lo que se denomina propagacin de clave (regla general), o se crea una nueva relacin.
Sergio Snchez
Sergio Snchez
EDITORIAL 1
EDITA
LIBRO n n
ESCRIBE
AUTOR n
CLAVE AJENA
EDITORIAL( Nombre_e, Direccin, Ciudad, Pas)
Sergio Snchez
Atributos Identificadores
Los atributos que son identificadores principales pasan a formar la clave primaria de la tabla.
Atributos No Identificadores
Se representan solo como columnas de la tabla correspondiente.
Sergio Snchez
Nombre
PROFESOR
Tlefono
PROFESOR
Cod_prof Nombre DNI Direccin Telfono Materia
Nombre Nombres, DNI DNIS, NOT NULL Direccin Lugares, Tlefono Nos_Telfono, Materia Materias, PRIMARY KEY (Cod_prof),
Sergio Snchez
UNIQUE (DNI) );
Atributos Multivaluados
Puesto que el modelo relacional no permite dominios multivaluados, deber crearse una nueva tabla cuyos nicos atributos ( y clave primaria ) ser la concatenacin de la clave primaria de la entidad original y el atributo multivaluado. Adems, se debe crear una clave ajena referenciado a la tabla primaria.
Cod_Prof
PROFESOR
n
CLAVE AJENA
Tlefono
PROFESOR n
IMPARTE
CURSO ( Cod_curso )
n
Cod_curso
CURSO
Cod_prof
PROFESOR n
Modelo Relacional
DEPARTAMENTO (Cod_dep, )
1
Cod_dep
DEPARTAMENTO
Sergio Snchez
Los criterios para aplicar una u otra regla y para propagar la clave se basan: Las cardinalidades mnimas.
Sergio Snchez
HOMBRE (0,1)
Modelo Relacional
HOMBRE ( Cod_Hombre )
(0,1)
Cod_Mujer
MUJER ( Cod_Mujer )
Clave Alternativa
Sergio Snchez
MUJER
PROFESOR (1,1)
Modelo Relacional
PROFESOR ( Cod_prof )
RESPONSABLE
DEPARTAMENTO
Clave Ajena
Sergio Snchez
NOT NULL
Sergio Snchez
PROFESOR 1,n
Nro_Horas
IMPARTE
CURSO
CURSO ( Cod_curso, )
Sergio Snchez
La manera de transformar una relacin de este tipo es utilizar el mecanismo de propagacin de clave, creando una clave ajena, con nulos no permitidos, en la tabla de la entidad dependiente, con la caracterstica de obligar a una modificacin y un borrado en cascada.
Adems, en el caso de dependencia en identificacin la clave primaria de la tabla en la que se ha transformado la entidad dbil debe estar formada por la concatenacin de las claves de las dos entidades participantes.
Cod_Curso
CURSO
Modelo Relacional
CURSO ( Cd_Curso, . )
TIENE
Sergio Snchez
Cod_Edicin
EDICION
Ao_doc Materia_doc
DOCTOR NO DOCTOR
Sergio Snchez
Sergio Snchez
Sergio Snchez
Sergio Snchez
Sergio Snchez
Todo atributo que no pertenece a una clave no puede depender de una parte de esa clave.
Ejemplo:
Proveedor ( codProv, codArt, dirProv, precio ) Est relacin esta en 1FN, pero dado lo siguiente: (codProv, codArt ) precio (precio depende de la clave primaria por completo ), (codProv) dirProv (dirProv solo depende de una parte de la clave codProv). Por lo tanto est relacin no est en 2FN, pues hay un atributo no clave (dirProv) que depende de una parte de la clave.
Sergio Snchez
Sergio Snchez
Ejemplo:
Carro (placa, marca, modelo, color) Est en 2FN, pero no en tercera forma normal, ya que el atributo marca depende del modelo y este no es parte de la clave primaria. Para normalizar se proyecta en dos relaciones. Carro (placa, modelo, color) ModelosDeCarros ( modelo, marca)
Sergio Snchez
Un esquema normalizado hasta 3FN debe cumplir con el juramento siguiente: Jura usted que cada columna de cada fila depende: De la clave (1FN). De toda la clave (2FN). Nada mas que de la clave (3FN).
Sergio Snchez
En el diseo de esquemas de bases de datos el concepto de dependencia funcional (functional dependency) es vital para eliminar "redundancia", otros factores sera el manejo de dependencias multivaluadas y las restricciones de integridad referencial.
Una dependencia funcional en una relacin R es una enunciado de la forma "si dos tuplas de R concuerdan en los atributos A1,A2,...An (tienen los mismos valores para cada atributo), entonces deben concordar tambin con otro atributo B" . Esta FD se escribira como A1,A2,....An --> B y se dice que "A1, A2,....An determina funcionalmente a B". Si por otro lado un conjunto de atributos A1,A2...An determina funcionalmente a ms de un atributo. A1, A2, , An B1; A1, A2, , An B2 ; .. ; A1, A2, , An Bn
Sergio Snchez
Ejemplo:
Movies(title, year, length, filmType, studioName, starName)
(title, year) length; (title, year) filmType; (title, year) studiName; (title, year) starName
Sergio Snchez
Sergio Snchez
Sergio Snchez
Bibliografa
Introduccin a los Sistemas de Base de Datos, C. J. Date, Prentice Hall Sptima Edicin, 2001. Bases de Datos Relacionales, Matilde Celma Gimnez & Juan Casamayor & Laura Mota, Prentice Hall, 2003.
Ctedra Introduccin a las bases de datos, Profesor L. Marti, Universidad de Valparaso, 2004.
Sergio Snchez