Modèle relationnel

Etape 4: Les contraintes d'intégrités

Le concept d'intégrité signifie l'absence d'incohérence dans une base de données. Les contraintes d'intégrité structurelles établissent des règles qui viennent compléter le schéma relationnel de la base de données pour assurer sa cohérence et seront par la suite traduites en SQL dans le système de gestion de base de données afin d'assurer la cohérence de la base de données. Ajouter un enregistrement, supprimer un enregistrement ou modifier la valeur d'attribut d'un enregistrement sont des opérations qui ne sont autorisées par le SGBD que si les contraintes d'intégrité structurelles sont toujours respectées par les données après l'opération. Si les contraintes sont violées, nous dirons alors que les données ont perdu leur intégrité.

Les contraintes d'intégrité sont classées en quatre catégories:

La garantie de l'intégrité référentielle déclenche des actions spécifiques lors de la suppression d'un enregistrement provenant d'une table et référencé par d'autres enregistrements dans une table étrangère. Le système de gestion de base de données peut alors se comporter de plusieurs manières:

Notons finalement que les opérations d'insertion et de mise à jour peuvent également être soumises à des contraintes qui garantissent en permanence l'intégrité référentielle d'une base de données. Par exemple, l'insertion du tuple «20, Morel, Chemin du Cerisier, Marly, 7» sera rejetée par un système de gestion de base de données qui supporte l'intégrité référentielle. En effet, la valeur «7» sera déclarée invalide car elle n'existe pas dans la table référencée DEPARTEMENT.

A vous de jouer !

En vous basant sur le schéma entités-associations ci-dessous représentant la structure des données nécessaires à la gestion d'une chaîne d'hôtels, créez le schéma logique de la base de données relationnelle associée. A ce dessein, vous utiliserez la notation condensée présentée ci-dessus en indiquant toutes les contraintes d'intégrité à l'exception de la contrainte de domaine.

rel18.jpg

|