Différence entre 1NF et 2NF et 3NF

Anonim

1NF vs 2NF vs 3NF

La normalisation est un processus mis en œuvre pour minimiser les redondances présentes dans les bases de données relationnelles. Ce processus divisera principalement les grandes tables en petites tables avec moins de redondances. Ces tables plus petites seront reliées les unes aux autres grâce à des relations bien définies. Dans une base de données bien normalisée, toute modification ou modification des données nécessitera la modification d'une seule table. La première forme normale (1NF), la deuxième forme normale (2NF) et la troisième forme normale (3NF) ont été introduites par Edgar F. Codd, qui est également l'inventeur du modèle relationnel et du concept de normalisation.

Qu'est-ce que 1NF?

1NF est la première forme normale, qui fournit l'ensemble minimal d'exigences pour la normalisation d'une base de données relationnelle. Une table conforme à 1NF assure qu'elle représente réellement une relation (c'est-à-dire qu'elle ne contient aucun enregistrement qui répète), mais il n'y a pas de définition universellement acceptée pour 1NF. Une propriété importante est qu'une table conforme à 1NF ne peut pas contenir d'attributs ayant une valeur relationnelle (c'est-à-dire que tous les attributs doivent avoir des valeurs atomiques).

Qu'est-ce que 2NF?

2NF est la deuxième forme normale utilisée dans les bases de données relationnelles. Pour qu'un tableau soit conforme à 2NF, il devrait être conforme à 1NF et tout attribut qui ne fait partie d'aucune clé candidate (c'est-à-dire des attributs non primordiaux) devrait dépendre entièrement de n'importe laquelle des clés candidates de la table.

Qu'est-ce que 3NF?

3NF est la troisième forme normale utilisée dans la normalisation de la base de données relationnelle. Selon la définition de Codd, une table est dite dans 3NF, si et seulement si cette table est dans la deuxième forme normale (2NF), et chaque attribut de la table qui n'appartient pas à une clé candidate devrait dépendre directement sur chaque clé candidate de cette table. En 1982 Carlo Zaniolo a produit une définition différemment exprimée pour 3NF. Les tables conformes à la norme 3NF ne contiennent généralement pas d'anomalies lors de l'insertion, de la suppression ou de la mise à jour d'enregistrements dans la table.

Quelle est la différence entre 1NF et 2NF et 3NF?

1NF, 2NF et 3NF sont des formes normales qui sont utilisées dans les bases de données relationnelles pour minimiser les redondances dans les tables. 3NF est considéré comme une forme normale plus forte que le 2NF, et il est considéré comme une forme normale plus forte que 1NF. Par conséquent, en général, l'obtention d'une table conforme au formulaire 3NF nécessitera la décomposition d'une table qui se trouve dans le 2NF. De la même façon, l'obtention d'une table conforme à la norme 2NF nécessite la décomposition d'une table dans le 1NF. Cependant, si une table conforme à 1NF contient des clés candidates qui ne sont constituées que d'un seul attribut (c'est-à-dire des clés candidates non composites), une telle table serait automatiquement conforme à 2NF.La décomposition des tables entraînera des opérations supplémentaires de jointure (ou produits cartésiens) lors de l'exécution des requêtes. Cela augmentera le temps de calcul. En revanche, les tableaux conformes à des formes normales plus fortes auraient moins de redondances que les tableaux qui ne respectent que des formes normales plus faibles.