Está en la página 1de 11

El Modelo de Datos Entidad-Relacin

Entidades y Relaciones Representacin Grfica de Entidades y Relaciones Cmo se pasa del esquema E/R a las tablas? Ejemplo de una universidad
Creacin de Tablas
Tabla Alumno Tabla Asignatura Tabla Matricula

Creacin de Relaciones
Exigir Integridad Referencial Actualizar en cascada los campos relacionados Eliminar en cascada los registros relacionados

El Modelo de Datos Entidad-Relacin (E/R)


Cuando se utiliza una base de datos para gestionar informacin, se est plasmando una parte del mundo real en una serie de tablas, registros y campos ubicados en un ordenador; crendose un modelo parcial de la realidad. Antes de crear fsicamente estas tablas en el ordenador se debe realizar un modelo de datos. Se suele cometer el error de ir creando nuevas tablas a medida que se van necesitando, haciendo as el modelo de datos y la construccin fsica de las tablas simultneamente. El resultado de esto acaba siendo un sistema de informacin parcheado, con datos dispersos que terminan por no cumplir adecuadamente los requisitos necesarios.

Entidades y Relaciones
El modelo de datos ms extendido es el denominado ENTIDAD/RELACIN (E/R) En el modelo E/R se parte de una situacin real a partir de la cual se definen entidades y relaciones entre dichas entidades:

Entidad.- Objeto del mundo real sobre el que queremos almacenar informacin (Ej: una persona). Las entidades estn compuestas de atributos que son los datos que definen el objeto (para la entidad persona seran DNI, nombre, apellidos, direccin,...). De entre los atributos habr uno o un conjunto de ellos que no se repite; a este atributo o conjunto de atributos se le llama clave de la entidad, (para la entidad persona una clave seria DNI). En toda entidad siempre hay al menos una clave que en el peor de los casos estar formada por todos los atributos de la tabla. Ya que pueden haber varias claves y necesitamos elegir una, lo haremos atendiendo a estas normas: Que sea nica. Que se tenga pleno conocimiento de ella.- Por qu en las empresas se asigna a cada cliente un nmero de cliente?. Que sea mnima, ya que ser muy utilizada por el gestor de base de datos. Relacin.- Asociacin entre entidades, sin existencia propia en el mundo real que estamos modelando, pero necesaria para reflejar las interacciones existentes entre entidades. Las relaciones pueden ser de tres tipos: Relaciones 1-1.- Las entidades que intervienen en la relacin se asocian una a una (Ej: la entidad HOMBRE, la entidad MUJER y entre ellos la relacin MATRIMONIO). Relaciones 1-n.- Una ocurrencia de una entidad est asociada con muchas (n) de otra (Ej: la entidad EMPERSA, la entidad TRABAJADOR y entre ellos la relacin TRABAJAR-EN). Relaciones n-n.-Cada ocurrencia, en cualquiera de las dos entidades de la relacin, puede estar asociada con muchas (n) de la otra y viceversa (Ej: la entidad ALUMNO, la entidad EMPRESA y entre ellos la relacin MATRCULA).

Representacin grfica de Entidades y Relaciones


Para asimilar fcilmente un diseo de datos cuando se emplea el modelo E/R se utilizan los siguientes elementos grficos:

La utilizacin de estos elementos dar como resultado lo que se denomina el esquema entidad-relacin de la base de datos. Los ejemplos que se incluyen en el apartado anterior, grficamente quedaran como sigue:

Cmo se pasa del esquema E/R a las tablas?


Para cada entidad del esquema se crear una tabla con tantos campos como atributos tenga la entidad. Ejemplo: Tabla 'TRABAJADOR'
DNI NUM_SS nombre-apellidos ... ... ......

11111111 XXXXXXXXXXX Fulano de tal ...... ...... ......

22222222 YYYYYYYYYYY Mengano de cual ...

Las relaciones 1-1 se pueden reflejar incluyendo en una de las dos tablas un campo en el que poder colocar la clave del elemento de la otra tabla con el que se est relacionado. Ese nuevo campo que se incluye en la tabla recibe el nombre de clave ajena. Ejemplo: Tabla 'HOMBRE'
DNI Nombre ...

11111111 ... 22222222 ... ... ...

... ... ...

Tabla 'MUJER'
DNI Nombre ... 33333333 ... ... 44444444 ... ... ... ... ... DNI-ESPOSO 11111111 (nulo) ...

Donde el campo DNI-ESPOSO es clave ajena de la tabla HOMBRE. Aqu hay que hacer notar que el campo DNI-ESPOSO puede tomar o bien un valor nulo, en el caso de aquellas mujeres que no estn casadas, o bien el valor de alguno de los DNI de la tabla HOMBRE, en el caso de las mujeres casadas; en este segundo caso, ese DNI (la clave ajena) no se deber repetir en ningn otro registro de la tabla MUJER. Las relaciones 1-n se representan de forma muy parecida a como se ha explicado para las relaciones 1-1. La diferencia est en que ahora no es indiferente donde se coloque la clave ajena, esta debe estar obligatoriamente en la tabla del 'mucho' (n); y adems, para este caso si se permitir que haya valores repetidos en dicho campo. Ejemplo: Tabla 'EMPRESA'
CIF Nombre ... XX-1111-AA ... ... YY-2222-BB ... ... ... ... ...

Tabla 'TRABAJADOR'
DNI Nombre ... 11111111 ... ... 22222222 ... ... 33333333 ... ... 44444444 ... ... ... ... ... CIF XX-1111-AA YY-2222-BB YY-2222-BB XX-1111-AA ...

Para representar las relaciones n-n en tablas lo que se hace es crear una nueva tabla solamente para la relacin. Esta nueva tabla tendr dos claves ajenas y su propia clave estar formada por la unin de las claves ajenas. Ejemplo:

Tabla 'ALUMNO'
DNI Nombre ... 11111111 ... ... 22222222 ... ... ... ... ...

Tabla 'ASIGNATURA'
COD-ASIGNATURA Nombre ... 01 ... ... 02 ... ... ... ... ...

Tabla 'MATRCULA'(esta es la relacin)


DNI COD_ASIGNATURA NOTA 11111111 01 7.5 11111111 02 6.25 22222222 01 5.5 22222222 02 8 ... ... ...

En la tabla MATRCULA es donde se refleja la relacin. La clave de dicha tabla est formada por los campos DNI y COD-ASIGNATURA ; y cada uno de ellos es clave ajena, el primero de ALUMNO y el segundo de ASIGNATURA. Hacer ver aqu que la tabla MATRICULAS puede tener ms campos adems de los que son clave ajena como ocurre en el ejemplo; la tabla aade adems un campo NOTA.

Ejemplo de una Universidad


Creacin de Tablas
Tabla Alumno

En una Universidad, si tenemos la entidad Alumno que definimos como:


Tabla ALUMNO(DNI, Nombre, Apellido1, Apellido2, Telefono, Calle, Ciudad, Provincia, FNacimiento, EstadoCivil) CP: DNI

Creando la tabla en vista "Diseo" obtenemos:

Tabla Asignatura

Y la entidad Asignatura definida como:


ASIGNATURA(Codigo, Nombre, Creditos, Dni_prof, Observaciones) CP:Codigo

Tabla Matricula

Y sabiendo que un alumno se puede matricular de muchas asignaturas y que una asignatura a su vez puede tener muchos alumnos matriculados, podemos definir entre ambas entidades la relacin (n-m) matricula como:
MATRICULA(DNI, Codigo_asig, Fecha, Nota) CP:DNI,Codigo_asig,Fecha

Y la tabla quedara como:

Creacin de Relaciones Seleccionamos la opcin Relaciones del men Herramientas:

Agregamos las tablas (Alumno,Asignatura y Matricula):

Que son:

Y por ltimo slo falta arrastrar los campos relacionados de la tabla con la relacin 1 a la tabla con la relacin muchos, es decir crear las relaciones, en las que seleccionaremos siempre :

Exigir Integridad Referencial Actualizar en cascada los campos relacionados Eliminar en cascada los registros relacionados

En el caso de Alumno-Matricula (1 Alumno.DNI se puede repetir n veces en Matricula.DNI) arrastramos el Alumno.DNI sobre la Matricula.DNI:

Y si repetimos la misma operacin entre Asignatura.Codigo y Matricula.Codigo_asig queda el esquema E-R en Access segn se muestra en la figura siguiente:

También podría gustarte