2016-12-17 1 views
0

Je fais une question de devoirs où je dois convertir une base de données en 1NF, 2NF et 3NF. Je suis arrivé à 2NF et il ne semble pas avoir de dépendances transitives. Cela signifie-t-il que c'est déjà dans 3NF?Une base de données 2NF peut-elle déjà être en 3NF?

+0

S'il vous plaît google votre titre. En outre, vous avez probablement vu une définition de 3NF qui mentionne 2NF. – philipxy

+0

C'est un malentendu commun que vous pouvez normaliser une relation à 2NF * et pas plus haut *, puis à 3NF * et pas plus haut *. La normalisation ne fonctionne pas de cette façon. Vous pouvez normaliser une relation visant à supprimer une dépendance de clé partielle (en visant 2NF), puis trouver les relations résultantes dans 5NF. –

Répondre

0

Oui, sauf si vous avez manqué une dépendance fonctionnelle transitive.

1

Oui. Quand une relation (variable ou valeur) est dans une forme normale donnée, elle peut aussi être dans des formes normales supérieures en même temps. (Mais attention que parfois les gens disent sloppily qu'une relation est sous une forme normale donnée mais ils signifient qu'il est sous cette forme normale mais aussi ne une plus élevée.)

Être dans une forme normale est une propriété d'une relation. La façon dont ils sont nommés, 1-2-3-BCNF-4-5 sont des conditions plus strictes et plus strictes. Donc, quand une relation rencontre une de ces conditions, elle rencontre toutes les précédentes et elle pourrait rencontrer les suivantes. Il se trouve que vous avez une relation 2NF qui est aussi une relation 3NF. Ou pour mettre cette autre façon, vous avez une relation 3NF que, comme chaque relation 3NF est également dans 2NF. Vous venez de remarquer que c'était dans 2NF avant vous avez remarqué qu'il était en 3NF.