DAC Tema 2: Modelo Entidad-Relación TEMA 2: MODELO ENTIDAD-RELACIÓN 1) INTRODUCCIÓN El modelo E/R es una técnica de representación gráfica que incorpora información relativa a los datos y la relación existente entre ellos para proporcionar una visión del mundo real Las características son las siguientes: • Refleja sólo existencia de datos y no lo que se hace con ellos • Es independiente de las BD y de sistemas operativos concretos • No se tienen en cuenta restricciones de espacio, almacenamiento ni tiempo de ejecución • Está abierto a la evolución del sistema 2) ELEMENTOS DEL MODELO E/R • Entidad Æ es un objeto abstracto o concreto que existe, que puede distinguirse de otro y del cuál se desea almacenar información (por ejemplo clientes). Se representa con un rectángulo • Atributos Æ toda entidad tiene una serie de características o propiedades llamadas atributos, por ejemplo, de la entidad cliente, los atributos nombre, dirección, teléfono… se representan mediante una elipse. Suelen tener 6 caracteres, tres para identificar el atributo y tres para identificar a la entidad a la que pertenecen • Relación Æ es una asociación entre varias entidades. Por ejemplo, entre alumnos y asignaturas la relación estar matriculados. Se representan mediante rombos y verbos en infinitivo • Atributos de una relación Æ una relación también puede tener atributos, los cuales representarán características propias de la asociación entre varias entidades • Claves Æ es un conjunto de uno o más atributos que, considerados conjuntamente, nos permiten identificar de forma única a un elemento de una entidad; además, ese conjunto de atributos ha de ser mínimo, ya que ningún subconjunto de atributos de la clave pueden funcionar también como clave. Se representan subrayando el atributo clave. Existen varios tipos de claves: o Claves candidatas: todas las posibles claves existentes o Claves primarias: es la clave candidata que elige el diseñador de la base de datos para identificar cada uno de los elementos de una entidad o Clave alternativa: es la clave candidata que no ha sido elegida como primaria Cristóbal S. Dorado Lorente -1- DAC Tema 2: Modelo Entidad-Relación • • o Clave ajena o foránea: conjunto de atributos de una entidad que son clave primaria en otro entidad Entidades fuertes Æ las entidades se pueden clasificar como fuertes o débiles, la fuerte es aquella que tiene clave primaria Entidad débil Æ son aquellas que no tienen los atributos necesarios para definir una clave primaria y dependen de una entidad fuerte. Se representa con un doble rectángulo. Es necesario dotar a este tipo de entidades con algún tipo de claves. Para ello se define el concepto de discriminador. Discriminador es el conjunto de atributos de la entidad débil tal que, para cada valor de la clave primaria de la entidad fuerte a la que está supeditada, identifica de forma unívoca a cada elemento de la entidad débil. La entidad débil tendrá una clave primaria que estará • formada por la clave primaria del conjunto de entidades fuertes más el discriminador. Grado Æ representa la participación de cada entidad en la relación. Hay tres tipos : o 1:1 Æ a cada ocurrencia de la entidad A sólo le corresponde una ocurrencia de la entidad B y viceversa A B 1 A 2 B 3 C o 1:N Æ a cada ocurrencia de la entidad A le puede corresponder una o más ocurrencias ocurrencia de la entidad B, pero a la ocurrencia de la entidad B sólo le corresponde una de la entidad A A B 1 2 3 Cristóbal S. Dorado Lorente A B C D E -2- DAC Tema 2: Modelo Entidad-Relación o N:M Æ a cada ocurrencia de la entidad A le corresponde varias ocurrencias ocurrencia de la entidad B y viceversa A B 1 2 3 A B C D E 3) TRANSFORMACIÓN DEL MODELO E/R AL MODELO RELACIONAL La transformación sigue las siguientes reglas: • Para cada entidad fuerte A, existe una única tabla a la que se le asigna el nombre de la entidad y cuyos atributos son los atributos de la entidad. La clave principal se subraya. • Para cada entidad débil B, existe una única tabla B que se le asigna el nombre de la entidad débil B y cuyos atributos son los de la entidad débil más los de la clave primaria de la entidad fuerte a la que está subordinada. La clave se subraya. • En las relaciones N:M, se crean una nueva entidad con los atributos de la relación más los atributos de son claves primarias de las entidades con las que se relacionan. Estas también serán claves primarias de la nueva entidad. Con los atributos que denotan fechas, horas o intervalos de tiempos, es necesario estudiar la semántica del universo del discurso (del entorno), con el fin de determinar cuáles serán los atributos de la clave primaria de la relación. • En las relaciones 1:N, la entidad del lado N añade el conjunto de campos necesarios para incorporar a sus atributos la totalidad de la clave primaria de la entidad del lado 1, creando una clave foránea. • En las relaciones 1:1 la clave de cada entidad pasa a ser foránea en la otra • Cuando una relación une más de dos entidades (terciarias) se crea una nueva tabla como si fuera N:M Cristóbal S. Dorado Lorente -3- DAC Tema 2: Modelo Entidad-Relación 4) GENERALIZACIÓN A veces existen entidades que comparten un número de atributos, en esos casos se pueden evitar redundancia aplicando la generalización. Por ejemplo: POLICÍA Æ (DNI, Nombre, Apellido, Graduación) BOMBERO Æ (DNI, Nombre, Apellido, Distrito, Ciudad) Se va a establecer una entidad superior denominada “empleado”, con los campos comunes de policía y bombero, que tendrá: EMPLEADO Æ (DNI, Nombre, Apellido, Tipo) Ahora policía y bombero serán clases especializadas de la entidad empleado. Para transformar una generalización al modelo relacional se crea una tabla para el conjunto de entidades para el nivel más alto y otras para las entidades del nivel inferior. El modelo relacional quedaría: EMPLEADO Æ (DNI, Nombre, Apellido, Tipo) POLICÍAS Æ (DNI, Graduación) BOMBEROS Æ (DNI, Distrito, Ciudad) Cristóbal S. Dorado Lorente -4-