Transformar cardinalidad N:M de MER a Modelo relacional

Hola a todos, hoy os voy a explicar como podemos transformar nuestras relaciones con cardinalidad N:M de modelo entidad relacion a modelo relacional.

En su día, ya vimos las cardinalidades en modelo entidad relacion aquí.

Cardinalidad en el Modelo Entidad-Relación

¿Como se transforma la cardinalidad N:M en modelo relacional?

Cuando tenemos una cardinalidad N:M entre dos entidades, se crea una nueva tabla con los atributos identificativos de ambas entidades.

Ambos atributos serán identificativos de la nueva tabla, además de ser claves foráneas.

En el caso de que la relación tenga atributos, se añadirán a la nueva tabla como atributos normales.

Ejemplo

Siguiendo el ejemplo que hemos visto en anteriores entradas, un empleado puede pertenecer a uno o varios departamentos.

cardinalidad N:M modelo relacional 1

En el formato gráfica, añadiremos una nueva tabla, puedes llamarla como quieras, lo habitual suele ser combinar ambas entidades.

cardinalidad N:M modelo relacional 2

En el formato tabla, añadiremos una nueva tabla indicando en sus atributos sus restricciones.

cardinalidad N:M modelo relacional 3

Cuando tenemos dos atributos identificativos, no pueden haber dos registros repetidos en la nueva tabla.

Por ejemplo, no podemos tener que el mismo empleado esta en el mismo departamento 2 o más veces.

Pero, ¿y si tuviéramos que repetirlo varias veces?

Por ejemplo, en nuestro caso, que un empleado pueda ingresar en un departamento, varias veces indicando la fecha de ingreso.cardinalidad N:M modelo relacional 4

Con lo que hemos hecho antes, el empleado no puede estar en un mismo departamento varias veces en diferentes fechas.

Para solucionar esto, crearemos un nuevo atributo, que será el identificativo, y las claves de las otras entidades pasaran a ser solo foráneas.

Esto no es siempre es necesario, según las necesidades del diseño es recomendable usarlo o no.

cardinalidad N:M modelo relacional 5

cardinalidad N:M modelo relacional 6

Otra opcion valida, es hacer que la fecha sea identificativa junto a las claves que nos traemos de las otras entidades.

cardinalidad N:M modelo relacional 7 cardinalidad N:M modelo relacional 8

Te dejo un video donde te lo explico en detalle:

https://youtu.be/xM_Qx0wkSSw

¿Quieres un curso completo de modelo relacional? Lo tenemos en el canal.

Espero que os sea de ayuda. Si tenéis dudas, preguntad. Estamos para ayudarte.

Compartir

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *


Warning: Trying to access array offset on value of type null in /home2/discodur/public_html/discoduroderoer/wp-content/themes/disto/single.php on line 539