From 1d8d4be844117d68860a609f2415dccbfeac3167 Mon Sep 17 00:00:00 2001 From: Yorick Barbanneau Date: Mon, 21 Mar 2022 22:53:13 +0100 Subject: [PATCH] Update database normalization course --- .../bdd_avancees/5-formes_normales/index.md | 39 ++++++++++++++++--- 1 file changed, 33 insertions(+), 6 deletions(-) diff --git a/content/bdd_avancees/5-formes_normales/index.md b/content/bdd_avancees/5-formes_normales/index.md index 231dc36..7b619a8 100644 --- a/content/bdd_avancees/5-formes_normales/index.md +++ b/content/bdd_avancees/5-formes_normales/index.md @@ -162,9 +162,36 @@ leurs propriétés, on peut directement obtenir une décomposition sans perte #### Principe - 1. Calculer la couverture minimale - 2. Condenser les dépendances fonctionnelles ayant la même partie gauche. Chaque - relation obtenue est alors en 3FN - 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 - de relation obtenu. +Soit \\(R(A,B,C,D,E) \text{ et } f\{AB \to C; C \to B; A \to D\} \\) + +**Calculer la couverture minimale** : + +\\( F_{\text{min}} \\{ AB \to C; C \to A; A \to D \\} \\) + +**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})\\)