Qu'est-ce que l'intégrité référentielle et comment un programmeur peut-il éviter ces problèmes?
Règle d'intégrité référentielle
En substance, l’intégrité référentielle indique qu’une base de données ne peut pas avoir de valeurs de clé étrangère non appariées. Une clé externe est une colonne dans une table de base de données dont les valeurs figurent dans la colonne de clé primaire, identificateur unique qui identifie une ligne dans une table, dans une autre table. Par exemple, considérons une table de base de données appelée "département", dans laquelle se trouve une colonne appelée "numéro de département" en tant que clé primaire. Elle est liée à une autre table appelée "employé", où "numéro de département" est une clé externe. Un employé ne peut pas appartenir à un certain département si le "numéro de département" correspondant n'existe pas déjà dans la table "département". Si le programme qui ajoute des employés renforce l'intégrité référentielle, toute tentative d'insertion d'un employé dans un service inconnu sera impossible.
avantage
En plus de garantir que ces références entre les données sont intactes et valides, la définition de l'intégrité référentielle d'une base de données présente de nombreux avantages. L'intégrité référentielle utilise le code existant dans un moteur de base de données au lieu de demander aux programmeurs d'écrire du code de programme personnalisé à partir de zéro. En conséquence, le développement de programmes est plus rapide, moins sujet aux erreurs et cohérent entre plusieurs programmes d’application accédant à la base de données.
Conséquences
Malheureusement, les langages de programmation ne disposent souvent pas des mécanismes permettant d'appliquer l'intégrité référentielle. Même lorsqu'un système de gestion de base de données prend en charge ces mécanismes, les programmeurs ne les utilisent pas. Ignorer l'intégrité référentielle a pour conséquence que le code de programmation qui présente des défauts ou des erreurs, des dysfonctionnements et une extension difficile.
Application
Les programmeurs peuvent appliquer l'intégrité référentielle et éviter les enregistrements "orphelins" d'une base de données en l'activant dans une relation entre deux tables. Dans Microsoft Access, par exemple, l’application de l’intégrité référentielle signifie que toute opération qui la viole est rejetée. Ces types d'opérations incluent des mises à jour de la base de données modifiant l'objet d'une référence ou des suppressions supprimant l'objet d'une référence. En outre, Microsoft Access propose également un ensemble d'options, appelées options "en cascade". Ces options permettent à la base de données de propager les mises à jour référentielles et supprimées, de sorte que toutes les lignes associées changent de la même manière.