Database Reference
In-Depth Information
Schéma relationnel ( suite )
Script SQL ( suite )
ALTER TABLE EMPLOYE
ADD CONSTRAINT fk_manager
FOREIGN KEY (id_manager)
REFERENCES EMPLOYE (id_emp);
ALTER TABLE EMPLOYE
ADD CONSTRAINT fk_meilleur_ami
FOREIGN KEY (id_ami)
REFERENCES EMPLOYE (id_emp);
De la même manière qu'il existe trois sortes de cardinalités de liens entre deux relations,
il en existe autant pour les autoréférences d'une même relation.
• Autoréférence avec cardinalité un-à-un  : le cas est rarissime. On peut donner un
exemple d'un point de vue statique. Dans une table de personnes physiques et dans nos
religions occidentales, une personne ne peut avoir qu'un seul conjoint. Ainsi, à l'ins-
tant t, une occurrence de personne peut être en lien 0 ou 1 à une autre personne (peu
importe qu'il soit homme ou femme, certains pays ayant admis le mariage homosexuel
et c'est le cas du Pacs en France).
• Autoréférence avec cardinalité un-à-plusieurs : c'est un cas très courant, car il conduit
à modéliser une arborescence. On le trouve typiquement dans les organigrammes d'en-
treprise pour savoir qui est le chef. Il est aussi souvent présent dans les nomenclatures
pour lesquelles les données sont emboîtées.
• Autoréférence avec cardinalité plusieurs-à-plusieurs : c'est le cas des graphes mathé-
matiques qui représentent des réseaux (lignes de métro, de bus, réseaux routiers,
télécommunications, réseaux informatiques…). Dans ce cas, le graphe peut être
vu de deux façons : orienté ou non, conduisant à une multiplicité des cardinalités.
Graphe non orienté  : c'est le cas notamment des réseaux de type full duplex. Par
exemple, si l'on veut modéliser la distance des routes aériennes entre deux aéroports,
peu importe le sens, car il n'y a pas de couloir aérien à sens unique ! Le résultat est
que la matrice des combinaisons est « triangulaire ». Il est ainsi inutile de stocker
la distance pour l'aller et le retour, une seule de ces deux informations sufit. En
revanche, pour la circulation des bus dans une grande ville, la présence de voies
à sens unique va multiplier les trajets orientés et donc doubler potentiellement le
nombre des combinaisons.
 
Search WWH ::




Custom Search