Cas | Explication |
Imaginons que nous avons hérité de ces deux tables T_Pays et T_Client, et que l'intégrité référentielle soit impossible à créer pour le moment. Il faudra prendre le temps de vérifier les pays et les clients associés. En attendant, établissons une relation sans intégité référentielle, juste pour info. Ou alors... Il s'agit d'une table T_Pays, avec seulement une dizaine de pays, les plus courants, mais rien n'empêche d'en ajouter d'autres à la main dans la table T_Client. L'idée étant ici de pouvoir écrire plein de pays exotiques pour certains clients sans pour autant remplir T_Pays de pays rarement utilisés. |
|
Ce cas est le plus strict : Il ne peut pas y avoir de client originaire d'un pays absent de T_Pays (intégrité référentielle), mais, en plus, nous estimons que T_Pays est impeccable, et qu'il n'y a aucune raison d'en changer l'orthographe (Mettre à jour en cascade non cochée). Et, pour finir, il est hors de question d'effacer un pays dont un ou plusieurs clients serait originaire, puisque ça effacerait les clients en question (Effacer en cascade non cochée) ! | |
L'intégrité référentielle est forcément cochée pour nous permettre de cocher la case Mettre à jour en cascade. Ici, nous avons créé T_Client, mais il nous reste quelques doutes sur l'orthographe des pays ! USA ou Etats-Unis ? Confédération Helvétique ou Suisse ? ... Lorsque nous finirons par être certains de nos orthographes, nous décocherons cette case. |
|
Dans ce cas, l'intégrité référentielle est aussi obligatoire pour cocher la case Effacer en cascade. Imaginons que nous devons abandonner les clients en provenance de tel ou tel pays (pour des raisons légales par exemple), ce peut être pratique de pouvoir ainsi supprimer directement les pays de T_Pays pour que les clients correspondants disparaissent également (Je vous avoue que cet exemple est un peu tiré par les cheveux... Vous rencontrerez certainement des cas plus pertinents pour lesquels cette case à cocher s'avérera plus utile que dangereuse) |
- La base de données a été conçue par quelqu'un qui ne maîtrise pas très bien Access, et qui ne connaît peut-être même pas l'existence des relations - Ou qui a essayé de créer les relations avec intégrité référentielle, mais qui n'a pas réussi à résoudre les différents messages d'erreur que nous avons étudié.
- La base de données a été conçue par un véritable professionnel Access, qui a estimé que dans certains cas, il n'était pas souhaitable ni possible de créer telle ou telle intégrité référentielle pour des raisons légitimes.
Aucun commentaire:
Enregistrer un commentaire