Documente Academic
Documente Profesional
Documente Cultură
Pgina 1 de 8
EL MODELO ENTIDAD-RELACIN:
Conceptos previos vistos anteriormente:
9 Los modelos de datos son el conjunto de conceptos o herramientas conceptuales que sirven para describir la estructura de una BD: los datos, las relaciones y las restricciones que se deben cumplir sobre los datos. 9 Se denomina esquema de la BD a la descripcin de una BD mediante un modelo de datos. Este esquema se especifica durante el diseo de la BD. 9 Modelos de datos lgicos basados en objetos: Se usan para describir datos en el nivel conceptual y en el externo. Se caracterizan porque permiten especificar estructuras flexibles y restricciones de datos. Por ejemplo, el Modelo Entidad-Relacin y el Modelo Orientado a Objetos. El Modelo Entidad-Relacin (o Modelo E-R o Modelo Entidad-Interrelacin) fue propuesto por Peter Chen en 1976 para la representacin conceptual de los problemas del mundo real. Este modelo de datos representa los datos utilizando grafos y smbolos grficos, adems de tablas para la representacin de los datos y sus relaciones.
NIFCIF
IdProveedor Proveedor
1:N
Suministra
Pgina 2 de 8
6. Identificador o Superclave: Es el conjunto de atributos que identifican de forma nica a cada entidad. Por ejemplo, la entidad EMPLEADO, con los atributos: nmero de la seguridad social, dni, nombre, direccin, fecha de nacimiento y telfono, podra tener como identificador slo el dni (pues no habr 2 empleados con el mismo dni), o slo el nmero de la seguridad social, o el conjunto de 3 atributos nombre, fecha de nacimiento y telfono (pues es difcil que hay 2 empleados en la misma empresa que tengan los mismos valores en esos 3 atributos). 7. Clave Candidata: Es cada una de las superclaves formadas por el mnimo nmero de campos posibles. En el ejemplo anterior habra 2 claves candidatas de un nico atributo: dni o nmero de la seguridad social. 8. Clave Primaria o Clave Principal (Primary Key): Es la clave candidata seleccionada por el diseador de la BD para identificar a cada entidad. Una clave primaria no puede tener valores nulos (vacos), ha de ser sencilla de crear y no ha de variar con el tiempo. El atributo o conjunto de atributos que forman parte de la clave primaria se representan subrayados. 9. Clave Ajena o Clave Fornea (Foreign Key): Es el atributo o conjunto de atributos de una entidad que constituyen la clave primaria de otra entidad. Las claves forneas representan las relaciones entre entidades. Por ejemplo, la entidad ARTCULO con los atributos: cdigo de artculo, descripcin de artculo, precio de venta y stock en almacn, y la entidad VENTA con los atributos: cdigo de venta, fecha de venta, cdigo de artculo y unidades vendidas; pues el atributo cdigo de artculo es clave fornea en la entidad VENTA, pues la relaciona con la entidad ARTCULO, debido a que ese atributo es clave primaria de la entidad ARTCULO. 10. Relacin: Es una asociacin entre diferentes entidades. Se representan mediante un rombo con su nombre, un verbo, en su interior. 11. Conjunto de Relaciones: Es un grupo de relaciones del mismo tipo. Por ejemplo, entre los conjuntos de entidades ARTCULOS y VENTAS puede haber varias relaciones distintas, pues todas ellas pueden formar un conjunto de relaciones, que vinculan el conjunto de entidades ARTCULOS con el de VENTAS. Una relacin puede tener atributos descriptivos, por ejemplo, supongamos que la entidad CLIENTE est relacionada con la entidad CUENTA a travs de una relacin OPERA; se necesitara el atributo FECHA_OPERACIN en el conjunto de relaciones CLIENTE_CUENTA, que especificara la ltima fecha en la que el cliente tuvo acceso a su cuenta bancaria.
Fecha_Operacin
Cliente
Opera
Cuenta
Pgina 3 de 8
1:N
Pertenece
(1,1)
(0,N)
Diagrama Entidad-Relacin de las relaciones entre departamentos y empleados de una empresa. A cada departamento le pertenecen 0 o ms empleados (N). Cada empleado pertenece a un departamento y slo a uno.
Cliente
Tiene
Un ejemplo de relacin de anillo sera el siguiente: la entidad EMPLEADO puede tener una relacin SER JEFE DE consigo misma, pues un empleado es jefe de muchos empleados y, a la vez, el jefe es un empleado. Otro ejemplo sera la relacin SER DELEGADO DE los alumnos de un curso, pues el delegado es tambin alumno del curso.
Nombre IdEmpleado Puesto Salario Empleado La relacin SER JEFE DE asocia la entidad EMPLEADO consigo misma. Es una relacin de grado 1, es decir, reflexiva. Su tipo de correspondencia es 1:N por lo siguiente:
(1,1) 1:N
Ser Jefe de
(0,N)
- Un empleado tiene un jefe y slo uno (1,1). - Un empleado es jefe de cero o ms empleados (0,N).
Las cardinalidades de asignacin expresan el nmero de entidades a las que puede asociarse otra entidad mediante un conjunto relacin. Las cardinalidades de asignacin se describen nicamente para conjuntos binarios de relaciones.
Pgina 4 de 8
Las cardinalidades de asignacin son las siguientes: 1. 1:1 o uno a uno: A cada elemento de la primera entidad le corresponde slo uno de la segunda entidad, y a la inversa. Por ejemplo, un cliente de un hotel ocupa una habitacin y cada habitacin es ocupada por un cliente titular; o por ejemplo, cada curso de alumnos tiene un nico tutor, y ese tutor es nicamente tutor de ese curso. 1:1
Curso Tiene Tutor
Ejemplo de relacin con cardinalidad 1:1, es decir, es una relacin de uno a uno.
2. 1:N o uno a muchos: A cada elemento de la primera entidad le corresponde uno o ms elementos de la segunda entidad, y a cada elemento de la segunda entidad le corresponde uno slo de la primera entidad. Por ejemplo, un mismo proveedor suministra varios artculos a una empresa, y cada artculo que adquiere la empresa siempre es pedido al mismo proveedor.
1:N
Proveedor1 Proveedor2 Proveedor3 Artculo1 Artculo2 Artculo3 Artculo4 Artculo5 Artculo6
1:N
Proveedor Suministra Artculo
3. N:M o muchos a muchos: A cada elemento de la primera entidad le corresponde uno o ms elementos de la segunda entidad, y a cada elemento de la segunda entidad le corresponde uno o ms elementos de la primera entidad. Por ejemplo, cada vendedor de una tienda vende muchos artculos y cada artculo es vendido por varios vendedores. N:M
Vendedor1 Vendedor2 Vendedor3 Artculo1 Artculo2 Artculo3 Artculo4 Artculo5 Artculo6
N:M
Vendedor Vende Artculo
La cardinalidad de una entidad informa del grado de participacin de dicha entidad concreta en la relacin. Se expresan entre parntesis indicando los valores mximo y mnimo. Los valores son: (0,1), (1,1), (0,N), (1,N) y (N,M). El valor 0 se pone cuando la participacin de la entidad es opcional.
Pgina 5 de 8
El ejemplo completo del diagrama E-R en el que se relacionaban las entidades EMPLEADO y DEPARTAMENTO sera:
1:N (1,1)
Pertenece
(0,N)
Empleado
(1,1)
(0,N)
Diagrama Entidad-Relacin de las relaciones entre departamentos y empleados de una empresa. A cada departamento le pertenece 0 o ms empleados (N). Cada empleado pertenece a un departamento y slo a uno. Un empleado tiene un jefe y slo uno (1,1). Un empleado que es jefe lo es de cero o ms empleados (0,N).
1:N
Ser Jefe de
Ejemplo de diagrama de estructuras de datos en el modelo E-R: En un centro escolar se imparten muchos cursos. Y cada curso est formado por un grupo de alumnos, dentro de cada curso un alumno es el delegado del grupo. Los alumnos cursan asignaturas, y una asignatura puede o no ser cursada por los alumnos. Se identifican las entidades (mirando los nombres del enunciado): centro (es un nico centro, el nuestro), curso, alumno, delegado (pues son alumnos), asignatura. Se identifican las relaciones (mirando los verbos que unen entidades interesantes): cada curso formado por alumnos, un alumno es delegado, alumnos cursan asignaturas. Se identifican las cardinalidades de las relaciones (examinando detenidamente el enunciado). Se identifican los atributos de cada entidad: puesto que el enunciado no informa de los posibles atributos de cada entidad tendremos que suponerlos: o Curso (IdCurso, Enseanza, Turno). o Alumno (IdMatricula, NombreAlumno, Direccin, Telfono). o Asignatura (IdAsignatura, NombreAsignatura, NmeroHoras).
Deducciones: o Un curso est formado por muchos alumnos, y cada alumno pertenece a un curso, por tanto la relacin binaria es 1:N. Para calcular la cardinalidad de las entidades alumno y curso preguntamos: A un curso cuntos alumnos pertenecen como mnimo? y como mximo? Al menos debe haber un alumno para que haya curso, y como mximo muchos, por tanto la cardinalidad de la entidad alumno es (1,N). Un alumno a cuntos cursos va a pertenecer? Como mnimo a 1 y como mximo tambin a 1, por tanto, la cardinalidad de la entidad curso es (1,1). o De los alumnos que hay en un grupo uno de ellos es delegado, es una relacin de grado 1. La relacin es del tipo 1:N porque un alumno es delegado de muchos alumnos. Un alumno de cuntos alumnos es delegado? Como mnimo de 0 pues puede que ese alumno no sea el delegado, y como mximo de muchos, pues si es el delegado lo ser de todos los dems alumnos del grupo, por tanto, la cardinalidad de la entidad alumno en ese extremo es (0,N); y en el otro, como cada alumno tiene un delegado como mnimo y como mximo, pondremos (1,1). o Entre alumnos y asignaturas surge una relacin binaria N:M, pues un alumno cursa varias asignaturas y una signatura es cursada por varios alumnos. La cardinalidad de la entidad alumno en la relacin cursa ser (1,N), pues un alumno como mnimo cursa una asignatura y como mximo varias, y la cardinalidad de la entidad asignatura para esa relacin ser (0,N) pues puede que exista una asignatura a la que no se haya matriculado ningn alumno, por tanto cursada por 0 alumnos como mnimo, o por muchos como mximo.
Pgina 6 de 8
Telfono
1:N (1,1)
Pertenece
Curso
(1,N)
(0,N)
Alumno
(1,1)
N:M
Cursa
(0,N) 1:N
Es Delegado NombreAsignatura NmeroHoras IdAsignatura Asignatura
(1,N)
Pgina 7 de 8
Solapada y Parcial
(1,1)
(0,1) o (1,1)
(0,1) o (1,1)
Solapada y Total
(0,1) o (1,1)
(1,1)
Empleado
(0,1) o (1,1)
(0,1) Arquitecto
(0,1) Administrativo
(0,1) Ingeniero
Exclusiva y Parcial
(0,1)
(1,1)
(0,1) (1,1)
Comisiones
Pulsaciones
Especialidad
Exclusiva y Total
AosExperiencia (0,1)
NmeroProyectos
Nivel
(0,1)
Agregacin:
Una limitacin del modelo E-R es que no es posible expresar relaciones entre relaciones. En estos casos se realiza una agregacin, que es una abstraccin a travs de la cual las relaciones se tratan como entidades de ms alto nivel. Por ejemplo, un empleado trabaja, una serie de horas asignadas, en varios proyectos, y usa unas herramientas determinadas durante la realizacin de los proyectos. La representacin del diagrama E-R sera:
N:M
Empleado Trabaja Proyecto
N:M
Usa Herramienta
IdHerramienta Descripcin
Pgina 8 de 8
Teniendo en cuenta la agregacin, se puede considerar que existe una entidad de mayor nivel llamada TRABAJO, compuesta por relacin TRABAJO y las entidades EMPLEADO y PROYECTO. Esta entidad de mayor nivel es realmente un conjunto de entidades y relaciones que estn asociadas. Al ser considerado el conjunto como una nica entidad, ya puede utilizarse una relacin, en este caso la relacin USA, para asociarla a otra entidad. As conseguimos relacionar una relacin con una entidad (la relacin TRABAJA con la entidad HERRAMIENTA a travs de la relacin USA).
N:M
Empleado Trabaja Proyecto
TRABAJO
N:M
Usa Herramienta
IdHerramienta Descripcin
Hay profesores que imparten clases en 2 tipos de centros educativos: pblicos y privados. Un profesor puede impartir clase en varios centros, ya sean pblicos o privados. La asignatura ser un atributo de la relacin entre el profesor y el centro donde imparte. Los centros educativos slo pueden ser pblicos o privados. Un centro pblico no puede ser privado a la vez, ni a la inversa. Los atributos especficos para los centros pblicos son: el presupuesto y los servicios; y para los privados son: la organizacin y la cuota.
Direccin Nombre Asignatura IdProfesor Nombre NmeroAlumnos TipoCentro IdCentro Observaciones
N:M
Profesor
(1,N)
Imparte
(1,M)
Centro
(1,1)
Especialidad Direccin
Telfono
(0,1) Pblico
(0,1) Privado
Presupuesto
Servicios
Organizacin
Cuota