IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Schéma Discussion :

Forme normale 3FNBCK


Sujet :

Schéma

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2008
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 35
    Points : 21
    Points
    21
    Par défaut Forme normale 3FNBCK
    Bonsoir à tous,

    Je suis en train de faire un exercice sur les formes normales et j'ai besoin de conseils.
    Voici l'énoncé :

    Soit R(A,B,C,D,E,F,G,H) une relation avec les DFS :
    A -> B
    B -> D
    C -> A
    I -> H
    AD -> C
    CB -> E
    E -> CBD
    HG -> I

    1/ Déterminez la couverture minimale de R

    Je trouve comme couverture minimale :

    A -> B
    B -> D
    C -> A
    I -> H
    AD -> C
    C -> E
    E -> C
    HG -> I

    Confirmation ?

    2/ Quelle est la forme normale de R ?

    Ici il faut trouver les clés candidates. Je pense à {H,G,C}, {E,H,G}.
    Ensuite si on considère {H,G,C} comme clé primaire la relation est en première forme normale car on a {HGC} -> I obtenu avec {HG} -> I. Donc elle n'est pas en 2 FN.
    Idem si on considère {EHG} comme clé primaire. On a {EHG} -> I obtenu avec {HG} -> I.

    Donc la relation est en deuxième forme normale.

    Confirmation ?

    3/ Proposez une décomposition de R en 3FNBCK.


    On a deux clés candidates qui se chevauchent. La 3FNBCK nous dit que toute source de dépendance doit contenir une clé candidate de R.
    Je ne vois pas vraiment comment décomposer la relation pour qu'elle soit en 3FNBCK.

    J'ai fait cette décomposition :
    R1(HGI)
    R2(IH)
    R3(EC)
    R4(CA)
    R5(AB)
    R6(BD)
    R7(ADC)

    Mais il me semble que celle-ci est en troisième forme normale (?).

    Si quelqu'un peut m'aider, confirmer ou non ce que je pense avoir trouvé, ça me sera d'une grande aide !

    Merci d'avance et bonne soirée !

  2. #2
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 001
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 001
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Bonsoir Guigui13,


    Vous avez des dépendances fonctionnelles dans lesquelles figure un attribut I qui est absent de l’en-tête de R, lequel contient par ailleurs un attribut F n’apparaissant dans aucune dépendance fonctionnelle. Avant qu’on puisse répondre, il faudrait apporter les modifications qui s’imposent...
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

  3. #3
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 001
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 001
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Bonjour,


    No news ? Je vais faire comme si la variable relationnelle R avait la structure suivante :

    R {A,B,C,D,E,G,H,I}

    Votre couverture est réductible. En effet, par application des axiomes et règles d’Armstrong :

    (1) De A - > B et B -> D on infère A -> D (transitivité).

    (2) De A -> D on infère A -> AD (augmentation).

    (3) Comme AD -> C est donnée, de A -> AD et AD -> C on infère A -> C (transitivité).

    Maintenant, à partir de A -> C on infère AD -> CD (augmentation) puis AD -> C (décomposition).

    Bref, vous devez remplacer AD -> C par A -> C.

    D'où la couverture :

    A -> B
    B -> D
    C -> A
    I -> H
    A -> C
    C -> E
    E -> C
    HG -> I


    Citation Envoyé par Guigui13 Voir le message
    la relation est en première forme normale car on a {HGC} -> I obtenu avec {HG} -> I.
    Les dépendances fonctionnelles ne sont pas partie prenante dans la définition de la première forme normale et on va dire que sans plus d’information sur la structure des attributs, la 1FN est respectée.

    En revanche, la 2FN est violée puisque le déterminant HG de la DF HG -> I n’est pas clé candidate (la fermeture HG+ du déterminant HG est seulement égale à HGI et pas à ABCDEGHI) : ce contre-exemple suffit.


    Concernant la 3FNBCK :

    La variable relationnelle R1{HGI} est délinquante, car il existe la DF : I -> H dont le déterminant I n’est pas clé candidate (fermeture I+ = IH alors qu’il faudrait IGH). R1 doit donc être décomposée en R2{IH} et R8{IG}.

    Puisqu’on a démontré que AD -> C est réductible à A -> C, R7 devient R7(AC) qui est en fait égale à R4 : R7 disparaît purement et simplement.

    Finalement la décomposition en variables relationnelles est la suivante :

    R8(GI)
    R2(IH)
    R3(EC)
    R4(CA)
    R5(AB)
    R6(BD)

    Dans laquelle chaque variable relationnelle respecte la 3FNBCK.


    A noter que si AD -> C n’avait pas été réductible, la variable R7{ADC} aurait été délinquante elle aussi puisqu’il existe la DF : C -> A dont le déterminant C n’est pas clé candidate (fermeture AC+ = AC alors qu’il faudrait ADC). R7 aurait donc dû être décomposée en R4{CA} et R9{CD}.
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

Discussions similaires

  1. Formes normales et champs multi-valués
    Par Doom dans le forum IHM
    Réponses: 3
    Dernier message: 08/02/2007, 12h58
  2. forme normale d'une table
    Par katkouta dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 05/06/2006, 22h20
  3. [FN]Question sur les formes normales
    Par joxbl dans le forum Schéma
    Réponses: 1
    Dernier message: 18/10/2005, 16h11
  4. 1ere ,2eme ...forme normal
    Par Melvine dans le forum Décisions SGBD
    Réponses: 5
    Dernier message: 24/05/2005, 23h05
  5. explication de définition-formes normales
    Par new_wave dans le forum Décisions SGBD
    Réponses: 3
    Dernier message: 25/01/2005, 13h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo