Leçon 10 : Modélisation des Relations : Un à Plusieurs (1:N)
C'est le type de relation le plus courant dans les bases de données relationnelles et c'est le fondement pour éviter la redondance des données.
Définition d'une Relation Un à Plusieurs
Une relation 1:N signifie :
- Un enregistrement dans la table 'parent' (le côté 'Un') peut être lié à plusieurs enregistrements dans la table 'enfant' (le côté 'Plusieurs').
- Chaque enregistrement dans la table 'enfant' ne peut être lié qu'à un seul enregistrement dans la table 'parent'.
Implémentation du 1:N
Nous appliquons cette relation en plaçant la Clé Primaire du côté 'Un' dans le côté 'Plusieurs' en tant que Clé Étrangère.
Exemple : Départements et Employés
- Un Département (Parent) peut avoir plusieurs Employés (Enfants).
- Un Employé (Enfant) ne peut appartenir qu'à un seul Département (Parent).
- Table Parent (Departments) : PK =
DeptID - Table Enfant (Employees) : FK =
DeptID
sql -- 1. Créer la table 'Un' (Parent) CREATE TABLE Departments ( DeptID INTEGER PRIMARY KEY, DeptName VARCHAR(50) );
-- 2. Créer la table 'Plusieurs' (Enfant) CREATE TABLE Employees ( EmployeeID INTEGER PRIMARY KEY, Name VARCHAR(100), DeptID INTEGER, -- FK FOREIGN KEY (DeptID) REFERENCES Departments(DeptID) );
Si nous avons DeptID 10 ('Marketing'), nous pouvons avoir 100 employés qui référencent tous DeptID 10. Les 100 employés partagent les données du département sans dupliquer le nom du département 100 fois.