Intégrité référentielle (ri)

Définition - Que signifie l'intégrité référentielle (IR)?

Afin de maintenir l'intégrité référentielle, les données relationnelles dans les tables de base de données doivent être configurables universellement afin que les changements dans une partie du système ne conduisent pas à des problèmes imprévus ailleurs.

Plus précisément, les clés qui référencent des éléments d'autres tables doivent être connectées à ces autres champs, de sorte qu'en cas de changement, tout soit mis à jour ensemble, et non séparément.

Cela évite les erreurs où des mises à jour fragmentaires créent des écarts.

Definir Tech explique l'intégrité référentielle (RI)

Une manière courante de renforcer l'intégrité référentielle consiste à développer des «déclencheurs» qui implémenteront des «cascades» dans une structure de base de données.

De manière générale, ces outils permettent aux administrateurs d'intégrer une intégrité référentielle qui fonctionne.

Travaillant avec des clés primaires et étrangères, les professionnels des bases de données peuvent créer des modèles pour appliquer l'intégrité référentielle dans les systèmes de tables.

Ensuite, avec l'intégrité référentielle en place, le contenu de la base de données sera réuni pour être mis à jour conjointement si nécessaire. Par exemple:

Prenons une base de données bancaire, qui contient deux tables:

  • Table CUSTOMER_MASTER: elle contient les données de base du client / titulaire de compte telles que le nom, le numéro de sécurité sociale, l'adresse et la date de naissance.

  • Table ACCOUNTS_MASTER: elle stocke les données de base du compte bancaire telles que le type de compte, la date de création du compte, le titulaire du compte et les limites de retrait.

Pour identifier de manière unique chaque client / titulaire de compte dans la table CUSTOMER_MASTER, une colonne de clé primaire nommée CUSTOMER_ID est créée.

Pour identifier une relation client-compte bancaire dans la table ACCOUNTS_MASTER, un client existant dans la table CUSTOMER_MASTER doit être référencé.

Ainsi, la colonne CUSTOMER_ID - également créée dans la table ACCOUNTS_MASTER - est une clé étrangère. Cette colonne est spéciale car ses valeurs ne sont pas nouvellement créées.

Ces valeurs doivent plutôt faire référence à des valeurs existantes et identiques dans la colonne de clé primaire d'une autre table, qui est la colonne CUSTOMER_ID de la table CUSTOMER_MASTER.

L'intégrité référentielle est une norme qui signifie que toute valeur CUSTOMER_ID dans la table CUSTOMER_MASTER ne peut pas être modifiée sans modifier la valeur correspondante dans la table ACCOUNTS_MASTER.

Par exemple: si l'ID client d'Andrew Smith est modifié dans la table CUSTOMER_MASTER, cette modification doit également être appliquée à la table ACCOUNTS_MASTER, permettant ainsi aux informations de compte d'Andrew Smith d'être liées à son ID client.

Alors, pourquoi l'intégrité référentielle est-elle importante?

Cela permet aux tables d'être modifiées quand elles en ont besoin. Supposons que vous ayez une table des responsables dans une table et une table des membres de l'équipe dans une autre table, avec une référence au responsable du membre de l'équipe de la première table.

Si l'un des responsables quitte et que la base de données doit refléter cela, le système d'intégrité référentielle s'assure que dans la deuxième table, la table séparée des membres de l'équipe, le champ du responsable affecté est également modifié.

Sinon, le nom obsolète apparaîtrait lors de la recherche dans la deuxième table.

Tout ce processus peut également être appelé création de «cohérence».

Les efforts de normalisation de la base de données contribuent également souvent à ce processus.

La normalisation de la base de données est généralement décrite comme «réduire une structure de données complexe en une structure simple» et grâce à ces techniques, qui incluent l'utilisation des trois «formulaires» connus des administrateurs, l'intégrité référentielle peut être naturellement appliquée dans une large mesure.