Au sein d'un schéma R,
Il peut exister un ensemble de contraintes, noté F,
On parle de contraintes d’intégrité.
Rappels d’algèbre de base:
Dépendance fonctionnelle
Soit r une relation définie selon R(A1,...,Am)
Soient X et Y deux sous-ensembles de R
On dit que la relation r définit une dépendance fonctionnelle de X vers Y,
Exemple 1 :
Soit la relation r:
A | B | C |
1 | a | e |
2 | b | f |
2 | c | f |
3 | d | k |
4 | d | k |
Exemple 2 :
F={num_client, date→num_article, quantité, prixnum_article, quantité→prix}
La première contrainte indique qu'il ne peut y avoir deux factures émises pour un même client à une date donnée.
La seconde contrainte indique que le prix payé dépend de l’article et de la quantité commandée.
Exemple 3 :
Soit le schéma :
Ouvrage (titre, auteur, éditeur, prix, date_edition)
et la contrainte :
La contrainte signifie :
“pour une oeuvre chez un certain éditeur, une seule édition est possible (pas de réédition à une date ultérieure)”
“politique du prix unique”
Exercice :
Soit le schéma :
Exprimer la dépendance fonctionnelle :
Il importe donc de bien réfléchir, au moment de l'étape de conception,
du réalisme et du caractère limitant de certaines dépendances fonctionnelles,
et du caractère éventuellement limitant du choix des attributs.
Ainsi, le schéma décrivant les commandes (exemple 2)
ne permet pas de commander des articles de nature différente au sein d'une même commande
(un client, pour commander deux rateaux et une truelle, doit donc effectuer deux commandes, qui plus est à des dates différentes!).
Previous :2.2.2 Relation
Up : 2.2 Aspect logique
Next : 2.2.4 Clé d'une relation