Asignatura: Base de Datos “I” TEORIA Año: 2016 Tema 8 El Modelo Entidad Relación.- Entidades y Conjuntos de Entidades. Relaciones y Conjunto de Relaciones. Limitantes del Mapeo. Llaves. Diagramas de Entidad-Relación. Reducción de Diagramas a Tablas. Conversiones del modelo E-R lógico al modelo relacional. Estudio de Casos. Relaciones binarias, n-arias y recursivas. Generalización y Especialización. Agregación. Modelo Entidad-Relación: Es uno de los modelos lógicos basados en objetos y por lo tanto se enfoca primordialmente a los niveles conceptuales y de visión. Una de las características de este modelo es que permite representar con claridad las limitantes de los datos. El modelo Entidad-Relación es en esencia una herramienta para representar el mundo real por medio de simbologías y expresiones determinadas. Entidades y Conjuntos de Entidades: Una entidad es un objeto que existe y puede ser distinguido de otro objeto. Una entidad puede ser concreta (un libro, un automóvil etc.) o abstracta (fecha, edad, etc.). Un conjunto de entidades es un grupo de entidades del mismo tipo. Una entidad puede pertenecer a más de un conjunto de entidades a la vez. Por ejemplo, la entidad persona puede ser parte de los conjuntos de entidades alumnos, empleados, clientes etc. Una entidad se distingue de otra porque posee ciertas características que la hacen única. A estas características se les conoce como atributo. El rango de valores validos para un atributo determinado será conocido como dominio del atributo. Ejemplo: Entidad Alumno: Atributos: LU, Apellido y Nombres, Edad, TE, Carrera. Una entidad se describe por un conjunto de parejas en el siguiente formato (atributo, valor del dato); debiendo especificarse una pareja por cada atributo de la entidad. Ejemplo: {(LU, 17425), (Apellido y Nombres, Pérez Juan),(Edad,21),(TE, 433648), (Carrera ,LS)} Relaciones y Conjuntos de Relaciones: Una relación es una asociación entre varias entidades. Un conjunto de relaciones, un grupo de relaciones del mismo tipo. La mayoría de las relaciones son BINARIAS; no obstante, pueden existir relaciones que incluyan a más de dos conjuntos de entidades. Normalmente asocian a dos conjuntos de entidades y la relación tendrá una función determinada; a esta se le denomina papel. Normalmente se utilizan los papeles para etiquetar y así reconocer las relaciones establecidas. Prof.:Esp. Juan Domingo Tonsich Hoja N°:1 Asignatura: Base de Datos “I” Alumno TEORIA Retira Año: 2016 Libro Las relaciones también pueden tener atributos descriptivos, en cuyo caso, la relación se describe indicando la pareja (atributo, ultimo valor del atributo) sobre la relación. Retira Alumno (Pérez Juan) Libro (Algebra) Limitantes del Mapeo: El modelo E-R permite definir una serie de limitantes aplicables en la información contenida en la base de datos, básicamente pueden definirse dos tipos de limitantes: 1)Cardinalidad del Mapeo: es aquella mediante la cual puede especificarse la cantidad de entidades que podrán asociarse mediante una relación, esta se aplica generalmente sobre dos conjuntos de entidades. Las cardinalidades existente para dos conjuntos de entidades M y N, y conjunto de relaciones “R” pueden ser: Uno a Uno: Una ocurrencia de la entidad A está asociada con a lo sumo una ocurrencia de la entidad B y una ocurrencia de la entidad B está asociada con a lo sumo una ocurrencia de la entidad A. A B Ejemplo: El DNI de un empleado de una Banco tiene asociado un solo número de Legajo, y para cada número de legajo hay uno solo DNI Uno a Muchos: Una ocurrencia de la entidad A está asociada con cualquier número de ocurrencias de la entidad B, pero toda ocurrencia de una entidad B solo puede estar asociada con una ocurrencia de la entidad A. A B Prof.:Esp. Juan Domingo Tonsich Hoja N°:2 Asignatura: Base de Datos “I” TEORIA Año: 2016 Ejemplo: Un País tiene asociado muchas provincias, pero cada provincia tiene asociado un solo País.Muchos a Muchos: Cualquier número de ocurrencias de la entidad A está asociada con cualquier número de ocurrencias de la entidad B, y cualquier ocurrencia de una entidad B está asociada con cualquier número de ocurrencias de la entidad A. Ejemplo: Un alumno tiene asociado muchas materias, y una materia tiene asociado muchos alumnos.2)Dependencia de Existencia: Nos permiten definir que un conjunto de entidades esta condicionado a la existencia de otro, un ejemplo de este condicionamiento se da entre una entidad alumno y la entidad calificación. A esta limitante se le denomina dependencia por existencia. Si una entidad Y requiere de una entidad X para existir se dice que Y es dependiente por existencia de X; esto implica que si eliminamos a la entidad X; deberá eliminarse la entidad Y. Para el caso anterior, se nombrara a X como la entidad dominante, y a Y como entidad subordinada. LLAVES o CLAVES: Uno de los procesos de mayor relevancia en la manipulación de una base de datos es el de distinguir entre las diversas entidades y relaciones que son manipuladas. Entendemos como una llave o clave al medio que nos permite identificar en forma unívoca (única e inequívoca) a una entidad dentro de un conjunto de entidades. Existen diversas categorías que permiten clasificar los tipos de llaves o claves a utilizar: a) LLAVE CANDIDATA: Se presenta también la situación de que una relación tenga mas de un atributo que posea la propiedad de identificación única, o mas de una llave candidata. Entonces una de ellas pasara a ser la llave primaria y el/las llaves restantes pasaran a ser llaves ALTERNAS. b) LLAVE PRIMARIA: Dentro de una relación específica hay un atributo cuyos valores son únicos dentro de esta, y por lo tanto se puede usar para identificar las tuplas/filas de la relación. Es aquella llave que el diseñador de la base de datos selecciona entra las llaves candidatas encontradas. Prof.:Esp. Juan Domingo Tonsich Hoja N°:3 Asignatura: Base de Datos “I” TEORIA Año: 2016 c) SUPER-LLAVE: Es un conjunto de atributos que forman la clave, pero no todos son necesarios para la identificación única de las instancias. Puede haber uno o varios atributos que sirven para la identificación del registro y el resto de los atributos normalmente son claves primarias en otras entidades. Ejemplo: Entidad Facturación.Atributos de la Súper Llave: CódigoSucursal, Nº Cliente y Nº Factura.Donde NºCliente es clave primaria(PK) de la entidad Clientes, CodigoSucursal es clave primaria(PK) dentro de la Entidad Sucursales. Esto se ocupa normalmente cuando sacrificamos capacidad de almacenamiento y tiempo de proceso, por eficacia/eficiencia en tiempos de respuestas, al momento de definir y generar índices de búsqueda.Entidades Débiles y Fuertes: Existen conjuntos de entidades que no poseen los atributos necesarios para conformar una llave primaria; se les conoce como entidad débil. Cuando existen los atributos necesarios para formar una llave primaria, se denominan entidad fuerte. Las entidades débiles se subordinan a las entidades fuertes. Ejemplo: Para ilustrar lo antes dicho se considera las entidades alumnos, materias y calificaciones donde: Alumnos: LU,Apynom,Direcc,Provincia.Materias: CodMat,NombreMateria,CodigoCarrera.Calificacones: LU,CodMat,Nota,FechaExamen.Donde LU es clave primaria en Alumnos, CodMat llave primaria en Materias, y la concatenación de LU+CodMat la clave primaria en Calificaciones.Entidades Fuertes: Alumnos,Materias.Entidades Débiles: Calificaciones.Las entidades débiles no pueden ser conocidas por sí solas; con el objeto de diferenciarlas se seleccionan algunos de sus atributos para formar un discriminador. Este discriminador se asocia con las llaves primarias de las entidades fuertes a las que se encuentre subordinada para formar así su llave primaria propia. Prof.:Esp. Juan Domingo Tonsich Hoja N°:4 Asignatura: Base de Datos “I” TEORIA Año: 2016 Diagramas de Entidad–Relación: Son esquemas que nos permitan representar conjunto de entidades y sus relaciones mediante la siguiente simbología. Conjunto de Entidades Atributos Conjunto de Relaciones Conexión Una a Una: Una a Muchas: Muchas a Una: Para ilustrar un ejemplo muy simple, si queremos graficar la entidad de SOCIOS de una Vídeo Club haríamos: Nombre Nº Socio Dirección Socios Prof.:Esp. Juan Domingo Tonsich Hoja N°:5 Asignatura: Base de Datos “I” TEORIA Año: 2016 si queremos graficar la entidad de PELICULAS de un Videoclub haríamos: Nombre CodPelic Género Películas Ahora para graficar los alquileres tendríamos: Fecha Dias Alquileres Si juntáramos todo esto en un solo gráfico tendríamos: Nomb re Cod Peli c Direcci ón Nº Socio No mbr e Pelí cula s Socios Fecha Dias Alquil Prof.:Esp. Juan Domingo Tonsich Hoja N°:6 Géne ro Asignatura: Base de Datos “I” TEORIA Año: 2016 La relación de alquileres a películas es de una a uno, sin embargo la relación de alquileres a socios es muchos a uno.Conjunto De Relaciones Con Derivación Múltiple: Puede darse el caso de que una relación sea binaria: es decir, que asocie a mas de dos conjunto de entidades. En estos casos la única variación para representar el modelo consiste en que se establecerá CARDINALIDAD para cada pareja de conjuntos de entidades. En un almacén se lleva el control de los artículos que son vendidos y facturados. El objetivo primordial además de mantener la información almacenada consiste en proceso de facturación. Los datos que se registran: RFC del cliente, nombre del cliente, domicilio, clave del articulo, descripción, costo unitario, numero de factura, fecha, cantidad de artículos vendidos (de cada uno). Prof.:Esp. Juan Domingo Tonsich Hoja N°:7 Asignatura: Base de Datos “I” TEORIA Año: 2016 Reducción de Diagramas E-R a Tablas: Con el objeto de observar las instancias de las bases de datos, los diagramas E-R se convierten en tablas. Se obtiene una tabla por cada conjunto de entidades o de relaciones. Existen reglas bien definidas para la conversión de los elementos de un diagrama E-R a tablas: 1) ENTIDADES FUERTES.- Se crea una tabla con una columna para cada atributo del conjunto de entidades. 2) ENTIDADES DÉBILES.- Se crea una tabla que contiene una columna para los atributos que forman la llave primaria de la entidad fuerte a la que se encuentra subordinada. 3) RELACIÓN.- se crea una tabla que contiene una columna para cada atributo descriptivo de la relación y para cada atributo que conforma la llave primaria de las entidades que están relacionadas. Para el caso visto de un Videoclub las tablas que se conforman son las siguientes: A-Tabla de Socios: Nº SOCIO Apellido y Nomb. 1001 GOMEZ RAMON 2002 AZCONA HECTOR 3003 SOSA MARTIN 4004 ESCOBAR CARLOS Dirección PERU 430 JUNIN 1234 ROCA 980 JUNCAL 1100 B-Tabla de Películas: CodPelicula Nombre Película 001 Duro de Matar 002 Tienes un Email 003 Mi Pobre Angelito 004 Asesino Genero Acción Romántica Divertida Suspenso B-Alquileres: Nº SOCIO 1001 2002 3003 4004 CodPelicula 003 001 002 004 Fecha 01-05-2016 01-05-2016 02-05-2016 03-05-2016 Días 2 1 3 2 GENERALIZACIÓN Y ESPECIALIZACIÓN: Son procesos que tienen por objeto la fusión o descomposición de atributos que conforman entidades. La generalización persigue la minimización de redundancia en la base de datos, de tal manera que puedan ocultarse las diferencias entre entidades, formando así entidades comunes. La especialización en el proceso inverso de la generalización; tiene por objeto reducir el espacio de almacenamiento requerido por la base de datos en el medio físico. Trae como consecuencia una redundancia necesaria, pero suprime el gasto de espacio en el medio secundario para aquellas columnas que no almacenan información por entidades bien determinadas. Prof.:Esp. Juan Domingo Tonsich Hoja N°:8