1NF vs 2NF vs 3NF
La normalisation est un processus qui est effectué pour minimiser les redondances qui sont présentes dans les données dans les bases de données relationnelles. Ce processus divisera principalement les grandes tables dans des tables plus petites avec moins de redondances. Ces tables plus petites seront liées les unes aux autres à travers des relations bien définies. Dans une base de données bien normalisée, toute modification ou modification des données nécessitera de modifier un seul tableau. 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 le concept de normalisation.
Qu'est-ce que 1NF?
1NF est la première forme normale, qui fournit l'ensemble minimum d'exigences pour normaliser une base de données relationnelle. Un tableau conforme à 1NF assure qu'il représente réellement une relation (i.e. Il ne contient aucun enregistrement qui se répéte), mais il n'y a pas de définition universellement acceptée pour 1NF. Une propriété importante est qu'un tableau conforme au 1NF ne pourrait contenir aucun attribution qui est une valeur relationnelle (i.e. Tous les attributs devraient 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 se conforme à 2NF, il doit être respecté à 1NF et à tout attribut qui ne fait partie d'une clé candidate (i.e. Attributs non prison) devraient dépendre pleinement de l'une des clés candidates du tableau.
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 du CODD, un tableau est dit en 3NF, si et seulement si, ce tableau est sous la deuxième forme normale (2NF), et chaque attribut du tableau qui n'appartient pas à une clé candidate devrait dépendre directement sur chaque clé candidate de ce tableau. En 1982, Carlo Zaniolo a produit une définition exprimée différemment pour 3NF. Les tableaux conformes au 3NF ne contiennent généralement pas d'anomalies qui se produisent lors de l'insertion, de la suppression ou de la mise à jour des enregistrements dans le tableau.
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 des tableaux. 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'un tableau conforme au formulaire 3NF nécessitera de décomposer un tableau qui se trouve dans le 2NF. De même, l'obtention d'un tableau conforme au 2NF nécessitera de décomposer une table qui se trouve dans le 1NF. Cependant, si une table qui se conforme à 1NF contient des clés candidates qui ne sont composées que d'un seul attribut (i.e. touches candidates non composites), un tel tableau se conformerait automatiquement à 2NF. La décomposition des tables entraînera des opérations de jointure supplémentaires (ou des produits cartésiens) lors de l'exécution de requêtes. Cela augmentera le temps de calcul. D'un autre côté, les tables qui respectent les formes normales plus fortes auraient moins de redondances que les tables qui ne respectent que des formes normales plus faibles.