Saltar la navegación

5.3.- Cardinalidad de entidades.

Dos rectángulos se interconectan a través de sendas líneas a un rombo. La línea que interconecta una de las entidades al rombo es una línea doble.
José Luís García Martínez. (Uso educativo nc)

Si existe cardinalidad en las relaciones, supondrás que también existe para las entidades. Estás en lo cierto, la cardinalidad con la que una entidad participa en una relación especifica el número mínimo y el número máximo de correspondencias en las que puede tomar parte cada ejemplar de dicha entidad. Indica el número de relaciones en las que una entidad puede aparecer.

Sean las entidades A y B, la participación de la entidad A en una relación es obligatoria (total) si la existencia de cada una de sus ocurrencias necesita como mínimo de una ocurrencia de la entidad B (ver figura). En caso contrario, la participación es opcional (parcial).

La cardinalidad de una entidad se representa con el número mínimo y máximo de correspondencias en las que puede tomar parte cada ejemplar de dicha entidad, entre paréntesis. Su representación gráfica será, por tanto, una etiqueta del tipo (0,1), (1,1), (0,N) o (1,N). El significado del primer y segundo elemento del paréntesis corresponde a (cadinalidad mínima, cardinalidad máxima):

  • Cardinalidad mínima. Indica el número mínimo de asociaciones en las que aparecerá cada ocurrencia de la entidad (el valor que se anota es de cero o uno, aunque tenga una cardinalidad mínima de más de uno, se indica sólo un uno). El valor 0 se pondrá cuando la participación de la entidad sea opcional.
  • Cardinalidad máxima. Indica el número máximo de relaciones en las que puede aparecer cada ocurrencia de la entidad. Puede ser uno, otro valor concreto mayor que uno (tres por ejemplo) o muchos (se representa con n).
La relación PERTENECE entre las entidades JUGADOR y EQUIPO, se representa con dos rectángulos unidos por una línea recta en la que aparece el rombo representativo de la relación. Junto a la entidad JUGADOR aparece la etiqueta (1,N) y junto a la entidad EQUIPO aparece la etiqueta (0,1).
José Luís García Martínez. (Uso educativo nc)

 Veámoslo más claro a través del siguiente ejemplo: un JUGADOR pertenece como mínimo a ningún EQUIPO y como máximo a uno (0,1) y, por otra parte, a un EQUIPO pertenece como mínimo un JUGADOR y como máximo varios (1,n). Como puedes ver, la cardinalidad (0,1) de JUGADOR se ha colocado junto a la entidad EQUIPO para representar que un jugador puede no pertenecer a ningún equipo o como máximo a uno. Para la cardinalidad de EQUIPO ocurre igual, se coloca su cardinalidad junto a la entidad JUGADOR para expresar que en un equipo hay mínimo un jugador y máximo varios.

Ten en cuenta que cuando se representa la cardinalidad de una entidad, el paréntesis y sus valores han de colocarse junto a la entidad con la que se relaciona. Es decir en el lado opuesto a la relación.

La cardinalidad de entidades también puede representarse en el modelo Entidad/Relación con la notación que se representa en la imagen de la derecha. Por tanto, el anterior ejemplo quedaría representado así:

Aparecen cinco notaciones diferentes para expresar los tipos de cardinalidades de las entidades. Estas son: muchos, uno, cero o muchos, uno o muchos y  cero o uno.
José Luís García Martínez. (Uso educativo nc)
Aparecen representadas las cardinalidades de dos entidades asociadas por una relación, a través de simbología, no con etiquetas del tipo (1,n).
José Luís García Martínez. (Uso educativo nc)

Autoevaluación

Pregunta

Supongamos que seguimos diseñando una base de datos para un sitio de juegos online. En un punto del proceso de diseño se ha de modelar el siguiente requisito: cada usuario registrado podrá crear las partidas que desee (a las que otros usuarios pueden unirse), pero una partida solo podrá estar creada por un único usuario. Un usuario podrá o no crear partidas. ¿Cuáles serían las etiquetas del tipo (cardinalidad mínima, cardinalidad máxima) que deberían ponerse junto a las entidades USUARIO y PARTIDA respectivamente, si éstas están asociadas por la relación CREAR (partida)?

Respuestas

(1,N) y (0,N)

(1,1) y (1,N)

(1,1) y (0,N)

Retroalimentación