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 :

[NF]Quelques précisions à propos de la forme de BOYCE-CODD


Sujet :

Schéma

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    958
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 958
    Points : 141
    Points
    141
    Par défaut [NF]Quelques précisions à propos de la forme de BOYCE-CODD
    Bonjour,


    Voici la définition de la forme normale de Boyce Codd que j'ai et suer laquelle j'aimerais revenir:
    Pour les identifiants composés de plusieurs propriétés, ces dernières ne doivent pas être dépendantes d'une autre propriété de l'entité
    Cela signifie - t-il qu'il ne peut pas y a voir de dépendance fonctionnelle d'une propriété d'une entité qui ne fait pas partie de l'identifiant vers un identifiant composé de plusieurs propriétés( ou seulement vers une propriété de l'identifiant)?

    Cela signifie t-il aussi qu'il ne peut pas y avoir de dépendance fonctionelle d'une des propriétés de l'identifiant vers une autre propriété de l'identifiant?

    Par exemple , si j'ai la table ASSOCIES dont l'identifiant est composé des propriétés id_terme_source_associe et id_terme _associe et qui contient la propriété id_thes, alors selon la forme normale boyce codd, la connaissance d'une valeur de id_thes ne peut entrainer la connaissance du id_terme_source_associe et celle du id_terme_associe(ou peut être même seulement l'un des deux) correspondant( c'est à dire qu'il ne peut pas y avoir dépendance fonctionnelle entre la propriété id_thes et l'identifiant composé des deux propriétés id_terme_source_associe) et id_terme_associe.
    Est ce exact?

    Ou cela signifie t il que la connaissance d'une valeur de id_terme_source_associe ne peut entraîner la connaissance du id_terme_associé correspondant?( c'est à dire qu'il y a dépendance fonctionnelle de id_terme_source_associe vers id_terme_associe).

    Je vous remercie beaucoup de votre aide .

    Bien cordialement.

    Nathalie Harbonne
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes. [SHADOKS]

  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 002
    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 002
    Points : 30 906
    Points
    30 906
    Billets dans le blog
    16
    Par défaut Définition rigoureuse de la BCNF
    Bonsoir,

    La théorie de la normalisation a été définie de façon rigoureuse au début des années soixante-dix par Ted Codd, père du Modèle Relationnel de Données. On peut considérer que cette théorie relève des mathématiques appliquées, d’où l’extrême rigueur apportée par Codd ès matière, ainsi que par les autres théoriciens du Modèle relationnel, à savoir Date, Heath, Boyce, Fagin, Rissanen et consorts.

    A l’opposé, votre définition de la BCNF manque de rigueur et est incomplète, d’où sans doute vos interrogations.

    Du point de vue de la forme, les énoncés des formes normales ont connu au fil des ans quelques transformations, sans toutefois avoir jamais été remis en cause.

    Concernant la BCNF, le premier à l’avoir formulée a été Ian Heath en 1971, suivi par Raymond Boyce en 1973, puis Codd en 1974, qui a aidé Boyce à reformuler sa définition.

    L’énoncé de la BCNF est le suivant (il en existe évidemment des variantes), tel qu’il est donné aujourd’hui par C.J. Date (qui a repris C. Zaniolo) :

    Une table S est en forme normale de Boyce-Codd (BCNF) si et seulement si
    pour chaque dépendance fonctionnelle non triviale X -> Y satisfaite par S, X est une surclé de S.

    J’ai utilisé le terme table : en réalité Date emploie le terme relvar (variable relationnelle), beaucoup plus précis.

    Peu importe. Vous observerez l’emploi de termes incontournables, qui ne vous sont sans doute pas familiers (surtout si vous raisonnez au départ en termes de propriétés et d'identifiants !) :

    — dépendance fonctionnelle non triviale.

    — surclé.

    Aussi, je vous renvoie aux explications fournies dans le message :

    J'espère que vous y trouverez les réponses à vos questions.

    D'un point de vue pratique : la normalisation n'est pas une panacée et vous pouvez très bien ne respecter que la première forme normale. En contrepartie, vous serez dans l'obligation au moins "morale" de développer les triggers permettant de garantir la validité des données dans les tables, quand celle-ci pourrait être mise en péril du fait des dépendances fonctionnelles à l'origine des manquements à la BCNF.
    (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.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 08/06/2007, 17h33
  2. [Fabrique] Quelques Précisions
    Par djflex68 dans le forum Design Patterns
    Réponses: 8
    Dernier message: 20/12/2006, 13h34
  3. Quelques "précisions" sur Struts
    Par Atma_ dans le forum Struts 1
    Réponses: 19
    Dernier message: 03/11/2006, 15h20
  4. A propos des Windows Forms
    Par sheitan dans le forum C++
    Réponses: 2
    Dernier message: 13/02/2006, 19h54

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