Modelo Entidad Relacin Interrelacion Asociacin o correspondencia entre entidades Tipo de interrelacion Estructura genrica del conjunto de interrelaciones existentes entre dos o mas entidades Ocurrencia de una interrelacin Es la vinculacin existente entre las ocurrencias concretas de cada uno de los tipos de entidades que intervienen en la interrelacin
Tipo de interrelacin Escribe Ocurrencia de la interrelacin : J hon Dale ha escrito el documento I ntroduccin a los Sistemas de Bases de Datos El tipo de interrelacin se caracteriza por u n Nombre: Escribe Grado: 2 dos tipos de entidad 3 tres tipos de entidad Tipo de correspondencia:1 a 1 1 a N N a M Documento Autor Escribe N:M Correspondencia : 1 a 1 Cuando en la Interrelacin solo puede aparecer como mximo una ocurrencia del tipo de entidad por cada ocurrencia del otro
Paciente Cama Presidente Pais Juan Ramos Cama 103 Gilberto Gomez Colombia Correspondencia : 1 a N Si para uno de los tipos de entidad puede haber un nmero indefinido de ocurrencias
Editorial Libro Edita 1:N 1 editorial edita muchos libros Equipo Futbol Jugadores Posee 1:N 1 Equipo posee muchos Jugadores Correspondencia : N a M Si 1 : N ocurre para ambas entidades Tema Consta N:M Escribe Autor Documento N:M Un documento es escrito pon N autores Un autor puede escribir M documentos Un Tema Consta de n temas Un tema consta de M temas trabaja pelicula Actor N:M En una pelcula pueden trabajar varios actores Un actor puede trabajar en varias peliculas Autor Documento Institucion Escribe N:M:1 En una institucin existen muchos autores que escriben muchos documentos Cliente Cuenta Sucursal CAB N:M:1 NSS NomCli Calle Ciudad NroCta Saldo
NomSuc CiudadS Activo Un Cliente puede tener varias cuentas , cada una situada en una sucursal especifica Una cuenta puede pertenecer a varios clientes distintos Libro Persona Escribe Publica N:M N:M Dos interrelaciones entre los mismos tipos de entidad Libro Socio Presta Codigo ISBN Titulo idioma AoEdicion NumEjem FechaPrestamo FechaDevolucion DNI Nombre Domicilio FechaNac Clave Primaria Clave Secundaria N:M Institucin Departamento Se compone 1:N I Institucin se compone de muchos departamentos Libro Ejemplar Tiene 1:N CodigoLibro NumEjem Un libro tiene muchos ejemplares Relacin Tabla Fichero Comparacin de terminologas Tupla Atributo Grado Cardinalidad Fila Columna NroColumnas NroFilas Registro Campo NroCampos Nroregistros Empleado Familiar Tiene (1,N) DNIEmpleado DNIFamiliar Modelo E/R Modelo Relacional Empleado ( DNIEmpleado,..) Familiar ( DNIFamiliar DNIEmpleado, ... DNIEmp NomEmp 12345678 Juan Perez 09874535 Jose Martin 46278312 Luisa Ramirez 67543410 Edgar Castro DNIEmp DNIFam NomEmp
12345678 05231333 Ricardo Perez 12345678 04349083 Rosa Perez 09874535 83518667 Ana de Martin 09874535 56545321 Luis Martin 46278312 64293331 Gloria Ramirez Libro Ejemplar Tiene (1,N) Codigo NroEjem Modelo E/R Modelo Relacional Libro ( Codigo Ejemplar ( Codigo, NroEjem, ... ) Codigo Titulo Autor 005.7C26 Visual C Julio Perez 051.5P15 Pascal 7 Jose Martin 061.3B01 Visual B Luisa Castro 070.3A19 Fortran Edgar Ruiz Codigo Ejemplar Edicion CantLib 005.7C26 1 1978 10 005.7C26 2 1989 4 051.5P15 1 1980 6 051.5P15 2 1980 7 46278312 1 1999 2 Autor Libro Escribe (N,M) CodAutor Codigo Modelo E/R Modelo Relacional Autor ( CodAutor Escribe ( Codigo, CodAutor Libro ( Codigo, Claves Foraneas CodAutor Autor A0026 Julio Perez A0034 Jose Martin A0056 Luisa Castro A0070 Edgar Ruiz A0078 Ramon Castro CodAutor CodLibro A0026 005.7C26 A0026 005.7C28 A0034 051.5P15 A0034 051.5P45 A0078 051.5P45 A0070 061.3B01 CodLibro Titulo 005.7C26 Visual C50 005.7C28 Visual C60 051.5P15 Pascal 7 051.5P45 Informatica 061.3B01 Visual B 070.3A19 Fortran Cardinalidad de las interrelaciones Escribe Autor Documento N:M Escribe Autor Documento N:M (0,n) (1,n) La etiqueta (1,n) en documento : 1 ocurrencia de autor puede estar vinculada a 1,2,.. N ocurrencias de documentos en el tipo de interrelacin Escribe La etiqueta (0,n) en autor : 1 ocurrencia de documento puede estar vinculada a 0,1,2,.. N ocurrencias de autor en el tipo de interrelacin Escribe Un autor escribe como mnimo 1 documento y como mximo n Un documento puede ser escrito por 0 autor (annimo) o por muchos Dependencia en existencia Cuando en una interrelacin esta vinculado un tipo de entidad regular con uno dbil, es decir la entidad dbil no puede existir sin la ocurrencia de la entidad regular de la que dependen Institucin Departamento Se compone 1:N (1,1) (0,n) E Dependencia en Identificacin Cuando adems de la dependencia en existencia, las ocurrencias del tipo de entidad dbil no se pueden identificar solo mediante sus atributos, sino que se tiene que aadir la clave de la ocurrencia de la entidad regular de la cual dependen 1:N Libro Ejemplar Tiene NumEjem Codigo Ejemplar (Codigo, NumEjem Ejm : DISEO de la BD RELACIONAL Disear una BD relacionar que permita la gestin de prstamos de libro de una biblioteca se parte de las fichas que se usan en biblioteca Ficha de las caractersticas de un libro Ficha de prstamos. Por cada libro, recoge informacin de la persona a la cual se le ha prestado el libro, Fecha de prstamo y Fecha de devolucin Informacin sobre el sistema deseado Para los libros interesa saber el idioma Cada libro trata de uno o varios temas Los temas se pueden dividir en subtemas y as sucesivamente Ejm. En el caso de diseo se pueden distinguir tres subtemas: Diseo fsico, lgico y conceptual De los autores interesa saber el nombre, la nacionalidad y la institucin donde trabajan
Socios. Se distinguen tres tipos de Alumnos a los que se les prestara a lo sumo uno obra durante 3 das. Alumnos de doctorado y tesistas que tienen como mximo acceso a 2 obras /semana Profesores y publico en general a los que se les prestara como mximo tres obras/mes
DISEO CONCEPTUAL Se elabora el Diagrama E/R, creandose las entidades: EJEMPLAR cuya identificacin depende de la entidad LIBRO y que permite distinguir las distintas copias de un mismo libro La interrelacin reflexiva CONSTA definida sobre la entidad TEMA nos muestra la divisin de temas en subtemas. A los socios se les asigna un numero de socio (NumS) y el atributo TipoS que permite distinguir los 3 tipos de usuario
FICHA DE UN LIBRO TITULO: Fundamentos de Base de Datos AUTOR: Tsai Luisa EDITORIAL : Rama Ao 1996 Nro de Ejemplares : 10 FICHA DE PRESTAMOS
Nombre FechaP FechaD Perez Luis 2/07/94 4/07/94 Ruiz Juana 4/11/94 6/11/94 Como un AUTOR puede trabajar en varias instituciones conviene crear la entidad INSTITUCIN para evitar los grupos repetitivos AUTOR INSTITUCIN Trabaja N:M NomI (1,n) (0,n) LIBRO EDITORIAL Escribe Edita N:M 1:N NomE NomA (0,n) (1,n) (0,n) (1,1) CodLib Trata TEMA Consta N:M N:M CodLib (0,n) (1,n) AUTOR INSTITUCIN Trabaja LIBRO EDITORIAL EJEMPLAR SOCIO Presta Tiene Trata TEMA Consta Escribe Edita N:M 1:N N:M N:M N:M N:M NomA NomI Identifi FechaP FechaS Diagrama E/R para la BD de Biblioteca NumS NomE CodLib NomT (0,n) (0,n) (0,n) (0,n) (1,n) (1,n) (1,n) (0,n) (0,n) (1,1) (1,1) (1,n) (0,n) (0,n) Transformacin del esquema Conceptual al Modelo Relacional Todo tipo de entidad se convierte en una relacin Todo tipo de interrelacin N:M se transforma en una relacin Todo tipo de interrelacin 1:N se traduce en el fenmeno de propagacin de clave o bien se crea una nueva relacin. DI SEO LOGI CO RELACI ONAL AUTOR (NomA, Nac, NomI ) TRABAJ A ( NomA, NomI , ... ) INSTITUCION ( NomI, Direccion, Tel , ..) LIBRO ( CodLib, Titulo, Idioma, Ao, NumCopias, NomE ESCRI BE ( NomA, CodLib ) EJEMPLAR ( CodLib, identifi ) SOCIO (NumS DNI Domicilio Tel TipoS PRESTA (CodLib Identifj NumS FechaP FechaD) TEMA NomT DescT CONSTA ( TemaP , TemaS ) TRATA (CodLib , NomT) EDITORIAL (NomE DirE Ciudad Pais) NomE DirE Ciudad Pais EDITORIAL CodLib Titulo Idioma Ao NroPag NomE LIBRO CodLib Identifj EJEMPLAR CodLib NombreT TRATA NombreT DescT TEMA CodLib Identifj NumS FechaP FechaD PRESTA TemaP TemaS CONSTA NumS DNI Domicilio Tel TipoS SOCIO NomA Nac NomI AUTOR NomA CodLib ESCRI BE GRAFO RELACIONAL NomA NomI Trabaja NomI Dir Tel INSTITUCION 1 n n 1 1 n n 1 n n 1 1 1 n 1 n 1 n 1 n Ejemplo: en un banco Las entidades: Cliente Cuenta Transaccin
TRANSACCION 1 n 1 1 1 n NroCli NSS Calle Ciudad C003 654-32 Principal Lima C005 890-12 Norte Callao C007 456-78 Principal Lima C008 369-12 Norte 56 Callao C045 246-80 Paso 12 SMP C056 121-21 Ponce 45 Comas C078 135-79 Nazca Callao NSS NroCta Fecha C003 259 17/06/90 C003 630 17/05/90 C005 401 23/05/90 C005 700 28/05/90 C005 199 13/06/90 C045 467 7/06/90 C045 115 7/06/90 C056 183 13/06/90 C078 118 17/06/90 C078 225 19/06/90 C078 210 27/06/90 NSS NroCta NomS 654-32 259 Miraflores 654-32 630 Lima 890-12 401 Niraflores 456-78 700 La Molina 369-12 199 Lima 246-80 467 Miraflores 246-80 115 San luis 121-21 183 San luis 135-79 118 Miraflores 135-79 225 San Miguel 135-79 210 San Luis
Cliente Cuenta Sucursal CAB N:M:1 NomCli NSS Calle Ciudad Saldo NroCta CAB Normalizacion 1 FN Descompone la estructura de datos no planos en registros de dos dimensiones Es decir la primer Forma Normal no tiene grupos repetitivos.
2 FN Para los registros cuyas llaves tiene mas de un dato item asegurate que todos los otros datos no claves sean dependientes solo de la clave completa. Divide los registros si es necesario para lograr esto. Todos los Data item no claves son totalmente dependientes de la clave primaria 3 FN Remueve todas las dependencias transitivas , dividiendo todos los registros si es necesario Todos los data item no claves son dependientes completamente de la clave primaria e independiente de cada uno de los otros. Dependencia Funcional El atributo A es funcionalmente dependiente del atributo B si el valor de A esta determinado por el valor de B: B ---> A Ejm Relacin Cliente NroCli NomCli CiudadCli C1 Juan P Lima C2 Ana R. Arequipa C3 Julia R Trujillo C4 Rosa M Tarapoto
La CiudadCli esta determinado por el NroCli El NomCli esta determinado por el NroCli
NomCli NroCli CiudadCli Primera Forma Normal No debe aceptar grupos repetitivos. Todos los campos en c/registro contienen un solo valor
Codigo TiTulo Autor 02134536 Data modelo Chavez 02134536 Data modelo Gomez 13232137 Guia de Oracle Date 04248344 Programacion Gardarin 04248344 Programacion Garcia
Codigo Titulo Autor 02134536 Data modelo Chavez 02134536 Data modelo Gomez 13232137 Guia de Oracle Date 04248344 Programacion Gardarin 04248344 Programacion Garcia
Se crean registros nuevos para cada uno de los valores distintos en un campo LIBRO ( Codigo Titulo ) AUTOR ( Codigo Autor ) Codigo TiTulo 02134536 Data modelo 13232137 Guia de Oracle 04248344 Programacion
Codigo Autor 02134536 Chavez 02134536 Gomez 13232137 Date 04248344 Gardarin 04248344 Garcia
Segunda Forma Normal Esta en la I FN Quitar de la 1FN todos los campos no clave que no sean totalmente dependientes de la clave primaria(Cada atributo no principal tiene dependencia funcional completa respecto de cada una de las claves) Guardar los campos no clave que fueron quitados en relaciones nuevas y adecuadas. PRESTA (codLibro, NumSocio, Editorial) CodLibro ---> Editorial
Tercera Forma Normal Esta en la 2 fn No existe ningn atributo no principal que dependa transitivamente de alguna de las claves de relacin SOCIO (NumSocio, Ciudad, Pas ) NumSocio --> Ciudad Ciudad ---> Pais
NroCli NomCli CiudadCli Imp PreUni NroInv Cant Fecha C1 Juan P Otawa 0.76 8.20 I3 1 06/05 C1 Juan P Otawa 0.76 8.20 I3 2 10/12 C2 Ana R Toronto 1.85 4.00 I2 1 05/15 C2 Ana R Toronto 1.85 8.20 I3 1 05/15 C2 Ana R Toronto 1.85 2.00 I1 3 05/15 C3 Roberto Otawa 0.76 4.00 I2 1 08/10 C3 Roberto Otawa 0.76 2.00 I1 2 10/10 C4 Rosa Montreal 1.05 10.50 I4 1 05/05 NroCli NomCli CiudadCli C1 Juan P Otawa C2 Ana R Toronto C3 Roberto Otawa C4 Rosa Montreal PreUni NroInv 8.20 I3 4.00 I2 2.00 I1 10.50 I4 NroCli NroInv Cant Fecha C1 I3 1 06/05 C1 I3 2 10/12 C2 I2 1 05/15 C2 I3 1 05/15 C2 I1 3 05/15 C3 I2 1 08/10 C3 I1 2 10/10 C4 I4 1 05/05 CiudadCli Imp Otawa 0.76 Toronto 1.85 Montreal 1.05 Documento Libro 1:N (1,1) (0,1) Articulo (0,1) Generalizacin y Herencia Dominios Nombres Nacionalidades Instituciones
xxxxx <----> 25 Francesa Norteamericana UPC Politecnico Nombre Nacionalidad Institucin