[Next] [Previous] [Top]

2 Clés d'une Relation

2.1 Approche classique

Définition 7

Soit R une relation munie des df F et soit K Ã R+,

K est une clé de R ssi ("A xce R+, K --> A xce F**)

et (" Kxab à K, $ A xce R+, Kxab --> A xcf F**)

Exemple:

R(A B C D E) et F = {A --> B, BC --> D, D --> E},

{A,C} est une clé de R.

Raisonnement (par écoulements): en mettant de l'eau en A et C simultanément, on peut "arroser" tous les attributs de R, et ce n'est pas le cas en ne mettant de l'eau qu'en A ou qu'en C.

Tous les attributs sources appartiennent à toutes les clés. Si la base complète est sans circuit, alors il existe une seule clé.

2.2 Clés potentielles et extension d'une relation

Soit R une relation munie de l'ensemble de df. F, et soit R1 une projection de R sur R1+ Ã R+, on cherche alors les clés de R1 en appliquant la définition ci-dessus, i.e. en faisant référence à F.

Exemple:

R(A B C)

F={A --> B, B --> A, A --> C}

R1 = R[B C]

En raisonnant sur toutes les df de F, on trouve que la clé de R1 est B. Constat: en calculant l'écoulement de B, on s'aperçoit que si A appartenait aussi à R1+, A serait aussi une clé de R1. D'où la définition suivante:

Définition 8

Soit R une relation munie de l'ensemble de df. F, soit R1 une projection de R sur R1+ Ã R+, et soit K1 une clé de R1,

K1xab à R+ est une clé potentielle de R1 ssi K1xab est une (nouvelle) clé de l'écoulement de K1.

Dans l'exemple ci-dessus, A est une clé potentielle de R1.

Définition 9

Soit R une relation et Kxab une clé potentielle de R,

on appelle extension de R à Kxab la relation Rxab = R[R+ xc8 Kxab ].

Autre exemple:

R(S A B C D), R1 = R[B C]

  1. clés de R1: B

  2. clés potentielles de R1:

    • écoulement de B: {B, A, C, D}

    • clés de R2 = R[B A C D]: A et B.

  3. l'extension R1xab = R[R1+ xc8 {A}] de R1 est la relation R[A B C]. On ne peut pas trouver d'autre clé potentielle pour R1xab .

Définition 10

Une relation R contient toutes ses clés ssi

" Kxab une clé potentielle de R, Kxab Õ R+

Remarque: cette notion d'extension permet de ne privilégier aucune clé d'une relation par rapport aux autres clés.


[Next] [Previous] [Top]

©1994 - Michel Léonard, CUI-Université de Genève

Generated with CERN WebMaker