Update database normalization course
This commit is contained in:
parent
28d234f2d4
commit
1d8d4be844
1 changed files with 33 additions and 6 deletions
|
@ -162,9 +162,36 @@ leurs propriétés, on peut directement obtenir une décomposition sans perte
|
||||||
|
|
||||||
#### Principe
|
#### Principe
|
||||||
|
|
||||||
1. Calculer la couverture minimale
|
Soit \\(R(A,B,C,D,E) \text{ et } f\{AB \to C; C \to B; A \to D\} \\)
|
||||||
2. Condenser les dépendances fonctionnelles ayant la même partie gauche. Chaque
|
|
||||||
relation obtenue est alors en 3FN
|
**Calculer la couverture minimale** :
|
||||||
3. Détecter les équivalences entre dependances fonctionnelles (regroupement des
|
|
||||||
relations) et vérifier que la clé \\(R\\) est présente dans un des schemas
|
\\( F_{\text{min}} \\{ AB \to C; C \to A; A \to D \\} \\)
|
||||||
de relation obtenu.
|
|
||||||
|
**Condenser les dépendances fonctionnelles** ayant la même partie gauche :
|
||||||
|
|
||||||
|
\\( R_{1}(\underline{A,B},C); R_{2}(\underline{C},B); R_{3}(\underline{A},D) \\)
|
||||||
|
|
||||||
|
Chaque dépendance fonctionnelle est une relation possible dont la partie gauche
|
||||||
|
est clé.
|
||||||
|
|
||||||
|
**Détecter les équivalences entre dependances fonctionnelles** par le
|
||||||
|
regroupement des relations et vérifier que la clé \\(R\\) est présente dans un
|
||||||
|
des schemas de relation obtenu.
|
||||||
|
|
||||||
|
\\( R_{1}(\underline{A,B},C); R_{2}(\underline{C},B); R_{3}(\underline{A},D) \\)
|
||||||
|
|
||||||
|
Ici \\(R_{1}\\) et \\(R_{2}\\) se réferencent mutuellement, nous pouvons les
|
||||||
|
regrouper en \\(R_{\text{1+2}}(\underline{A,B},C)\\).
|
||||||
|
|
||||||
|
La relation \\(R\\) a donc deux clés candidates: \\(\\{A,B,E\\}\\) et
|
||||||
|
\\(\\{A,C,E\\}\\). Pour ne pas perdre \\(E\\), il faut ajouter une relation
|
||||||
|
composée de la clé \\(R\\), par exemple \\(R_{4}(\underline{A,B,E})\\).
|
||||||
|
|
||||||
|
**La décomposition est donc** :
|
||||||
|
|
||||||
|
\\(R_{1+2}(\underline{A,B},C)\\)
|
||||||
|
|
||||||
|
\\(R_{3}(\underline{A},D)\\)
|
||||||
|
|
||||||
|
\\(R_{4}(\underline{A,B,E})\\)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue