Quelle est la différence entre les relations 1: M et 1: N dans une base de données relationnelle?


Réponse 1:

Les bases de données relationnelles SQL prennent en charge deux principaux modèles de relations.

  • 1: M Modèle de données un-à-plusieurs1: 1 Modèle de données un-à-un

Un à plusieurs signifie que chaque ligne du tableau A correspond à zéro ou plusieurs lignes du tableau B. Par exemple, la table PERSON contient des PHONE_NUMBERS dans une autre table, mais certaines PERSON peuvent ne pas avoir de ligne de numéro de téléphone. La table PHONE_NUMBERS a FOREIGN KEYS pointant vers la PERSON.

- Trouvez toutes les personnes et leurs numéros de téléphone. SELECT * FROM PERSON REJOIGNEZ PHONE_NUMBERS USING (PERSON_ID);

Un à un signifie que chaque ligne du tableau A correspond à zéro ou une ligne dans un tableau de référence B. Par exemple, le tableau PERSON a un champ ADRESSE et le STATE correspond à un tableau de référence des états du pays. La table PERSON a des CLÉS ÉTRANGÈRES pointant l'ÉTAT vers la table STATE_CODES.

- Trouvez toutes les personnes et montrez le nom complet de l'État où elles vivent. SÉLECTIONNEZ P.PERSON_ID, P.HOUSE_NUMBER, P.STREET, P.CITY, S.STATE_NAME DE PERSON AS P REJOINDRE STATE_CODES AS S ON (PERSON.STATE = STATE_ID);

Zéro lignes et la valeur NULL

Une colonne FOREIGN KEY One to One peut être NULL. Cela signifie que le champ est encore inconnu. Par exemple, la colonne STATE ci-dessus est NULL jusqu'à ce que quelqu'un définisse l'adresse de la personne.

PS

Je n'ai aucune idée de ce que signifie 1: N.


Réponse 2:

1: M et 1: N sont simplement une notation alternative pour une relation conventionnelle de 1 à plusieurs entre deux tables dans une base de données relationnelle. Vous pouvez également voir ce type de relation écrit comme M: 1 ou N: 1.

Une relation un à un entre deux tables est appelée 1: 1. De même, M: N décrit le type de relation plusieurs-à-plusieurs.


Réponse 3:

1: M et 1: N sont simplement une notation alternative pour une relation conventionnelle de 1 à plusieurs entre deux tables dans une base de données relationnelle. Vous pouvez également voir ce type de relation écrit comme M: 1 ou N: 1.

Une relation un à un entre deux tables est appelée 1: 1. De même, M: N décrit le type de relation plusieurs-à-plusieurs.