2.3. Restricciones.

Ver comentarios

Un esquema de desarrollo E-R puede definir ciertas restricciones a las que los contenidos de la base de datos se deben adaptar. En este apartado se examina la correspondencia de cardinalidades y las restricciones de participación, que son dos de los tipos más importantes de restricciones.

La correspondencia de cardinalidades, o razón de cardinalidad, expresa el número de entidades a las que otra entidad puede estar asociada vía un conjunto de relaciones.

Reglas de cardinalidad:

Cardinalidad de uno a uno: Una carnidalidad de la interrelación que es 1 en ambas direcciones. Cuando un registro de una tabla sólo puede estar relacionado con un único registro de la otra tabla y viceversa. En este caso la clave foránea se ubica en alguna de las 2 tablas.

Cardinalidad de uno a muchos: Cuando un registro de una tabla (tabla secundaria) sólo puede estar relacionado con un único registro de la otra tabla (tabla principal) y un registro de la tabla principal puede tener más de un registro relacionado en la tabla secundaria. En este caso la clave foránea se ubica en la tabla secundaria.

Cardinalidad de muchos a muchos: Cuando un registro de una tabla puede estar relacionado con más de un registro de la otra tabla y viceversa. En este caso las dos tablas no pueden estar relacionadas directamente, se tiene que añadir una tabla entre las dos (Tabla débil o de vinculación) que incluya los pares de valores relacionados entre sí.

El nombre de tabla débil deviene de que con sus atributos propios no se puede encontrar la clave, por estar asociada a otra entidad. La clave de esta tabla se conforma por la unión de los campos claves de las tablas que relaciona.

Reglas que determinan las interrelaciones (cardinalidad).

Regla 1. Si dos tablas tienen una interrelación de uno a uno (1 a 1), entonces el campo clave de una de las tablas debe aparecer en la otra tabla.

Regla 2. Si dos tablas tienen una interrelación de uno a muchos (1 a *), entonces el campo clave de la tabla del (1) debe aparecer en la tabla del muchos (*).

Regla 3. Si dos tablas tienen una interrelación de muchos a muchos (* a *), entonces debe crearse una tabla que tenga los campos claves de las dos tablas.

Ejemplos:

Las relaciones entre entidades se generan en dos direcciones, 1. Si se quiere definir la relación entre un empleado y un departamento se especifica de la siguiente manera:

  • Un empleado pertenece a un departamento.
  • En un departamento están asignados muchos empleados.
  • Esta relación es de tipo 1:M

2. Para una interrelación entre un supervisor y un departamento, la cardinalidad es de una a una, en donde el 1 es representado por 1.

  • Un supervisor, supervisa un departamento.
  • Un departamento es supervisado por una persona.
  • En este caso la relación es de uno a uno.

3. Para una interrelación entre un supervisor y empleados, la cardinalidad es de una a mucho, en donde el muchos puede ser representado por un (*), o la letra m.

  • Un supervisor supervisa a muchos empleados.
  • Un empleado es supervisado por un supervisor.
  • En este caso la relación es de uno a muchos.

4. En una relación entre alumnos y materias cursadas, la cardinalidad es de muchos a muchos.

  • Un alumno cursa muchas materias.
  • Una materia la cursan muchos alumnos.
  • En este caso es una interrelación de muchos a muchos.

Como en este ejemplo se tiene una relación de muchos a muchos, se genera una tercera entidad débil (Cursa), que se forma con las llaves primarias de la entidad Alumno y Materias.


Comentarios