CIF

Une CIF ou Contrainte d’Intégrité Fonctionnelle est un type d’association entre 2 entités.

Elle se caractérise par un 1 en cardinalité supérieure (0,1 ou 1,1) sur une des pattes de la relation. On dit alors que la relation est porteuse d’une dépendance fonctionnelle. Une CIF indique donc une dépendance. Une des entités de l’association est déterminée par la connaissance d’une (ou plusieurs) autre entité présente dans l’association. Cette une association forte et hiérarchique. Sans entité parent, il ne peut pas y avoir d’entité enfant. À ne pas confondre avec une CIM.

Une CIF se transforme ensuite (lorsque l’on passe au MPD / MLD) en une clé étrangère. Cette clé étrangère est un champ ajouté à la table située du côté du 1 en cardinalité maximale qui reprend le champ clé primaire de la table située de l’autre côté de la relation.

clé étrangère en base de données
La cardinalité 1,1 sur la gauche de la relation fait de la relation une CIF

Sur l’exemple ci-dessus, on a donc :

  • Une structure, une ville et la relation « se situe ».
  • Le 1,1 en cardinalité sur la gauche de la relation signifie qu’une structure se situe dans une et une seule ville.
  • Il ne peut pas y avoir de structure s’il n’y a pas de ville. La structure dépend de la ville.
  • En conséquence, lorsque l’on passe aux étapes ultérieures de réalisation de la base de données, le vil_id se retrouve en clé étrangère dans la table structure. Et c’est logique. On sait ainsi que la structure est liée à une seule ville que l’on peut retrouver simplement car on a son numéro unique directement dans la table. On pourra ensuite, via SQL, faire une requête qui permet de retrouver le nom de la ville.