Base de Données 3 février 2001 M Cieloski
2
Contrainte de clé :
Ce premier type de contrainte traité par le SGBD permet de
vérifier l’unicité des clés de chacune des tables (clé primaire). Une clé primaire peut
être constituée de plusieurs colonnes. Elle doit répondre à une obligation ; Quelque
soit la table si une clé primaire est définie, elle doit être présente dans chaque
enregistrement et aucun de ses composants ne doit être NULL.
Si la clé à déjà été saisie cela déclenche une erreur.
Contrainte de type de données :
permet de vérifier les types de données saisie et les
domaines de validité (ex : note entre 0 et 20)
Contrainte d’intégrité référentielle :
La gestion des contraintes d’intégrités permet
aussi de vérifier automatiquement la présence de données référencées dans des
tables différentes.
C’est à dire qu’une contrainte d’intégrité référentielle peut s’appliquer dès qu’une clé
primaire d’une table est utilisée comme référence dans une autre table.
(ex : num_spec est une clé étrangère dans les tables jouer et representaion)
La clé étrangère :
Elle peut être constituée de plusieurs colonnes, le n° de produit
(clé primaire de la table produits), mais elle est clé étrangère de la table commandes
quand au n° de fournisseur, clé primaire de la table fournisseurs et clé étrangère
dans commandes.
Anomalies de suppression :
Si on supprime le fournisseur 17, 3 commandes de la
table commande deviennent incohérentes ; Elle doivent d’abord être supprimées
dans la table commandes.
Anomalies de modification :
Si on transforme le n° de fauteuil rouge de 102 à 112,
les 2 enregistrements de la table des commandes doivent également être modifiés.
Anomalies d’ajout :
Si on tente d’ajouter une commande qui se réfère au produit
111 ; L’ajout est refusé car il n’existe pas dans la table produits.
En résumé :
Grâce à la gestion des contraintes dont le SGBD s’occupe à chaque
action sur les données cela contribue à la cohérence de la base.
3 façons selon les souhaits de l’utilisateur.
- un simple signalement de l’anomalie (message)
- Effacement automatique des tuples
- MAJ des tuples qui utilise la clé étrangère qui référence une clé primaire qui
vient de changer de valeur.
Le LDD
permet d’exprimer ces différentes contraintes au moment de la création de
la table associée à la définition d’une colonne, il est possible d’ajouter l’expression de
ces différentes contraintes.
CONSTRAINT : Permet de nommer la contrainte
LDD langage de description des données