3. Langages de requête et de manipulation des données
101
Contraintes
d’intégrité
déclaratives
Les contraintes d'intégrité déclaratives (declarative integrity
constraints, en anglais) sont définies à l'aide du langage de définition
de données. Dans la commande de création d'une table (CREATE
TABLE), on attribue un nom à chaque règle par la clause facultative
CONSTRAINT. Les noms de contraintes sont gérés au niveau des tables
système. Dans l’exemple de la figure 3-13 nous définissons la clé
primaire de la table DÉPARTEMENT sous forme d'une contrainte
d'intégrité nommée Dépt_CléPrimaire. De manière analogue nous
spécifions la clé primaire et une clé étrangère pour la table EMPLOYÉ.
Il existe plusieurs types de contraintes d'intégrité déclaratives :
„ Définition de la clé primaire : la contrainte PRIMARY KEY définit
une clé primaire unique dans une table. Par définition, cette clé
n'admet jamais la valeur nulle.
„ Définition d'une clé étrangère : la contrainte FOREIGN KEY
définit une clé étrangère qui est liée à la table référencée par le
mot-clé REFERENCES.
„ Unicité : l'unicité des valeurs d'un attribut peut être imposée par
la contrainte UNIQUE. Au contraire de la clé primaire, un attribut
soumis à la contrainte UNIQUE peut contenir la valeur nulle.
„ Valeur nulle exclue : la contrainte NOT NULL empêche un attribut
d'être mis à la valeur nulle.
„ Règle de validation : une règle de validation est déclarée dans
une contrainte CHECK et doit être respectée par chaque tuple
dans une table. Par exemple, pour la table PERSONNEL dans la
figure 3-12, la règle suivante :
CONSTRAINT ValidationSalaire
CHECK (Salaire > 60’000 AND Affectation = ‘D6’)
impose un salaire annuel minimum de 60 000 francs à chaque
employé du département D6.
„ Suppression avec mise à la valeur nulle : avec la contrainte ON
DELETE SET NULL déclarée dans une table dépendante, la
suppression des tuples de la table de référence entraîne la mise à
Précédent

- 116/301

Suivant