Maison  >  Article  >  base de données  >  Quelle est la différence entre le premier, le deuxième et le troisième paradigme de base de données ?

Quelle est la différence entre le premier, le deuxième et le troisième paradigme de base de données ?

醉折花枝作酒筹
醉折花枝作酒筹original
2021-06-24 10:12:5224262parcourir

La différence entre la première, la deuxième et la troisième forme normale du paradigme de base de données est la suivante : 1. La première forme normale signifie qu'il n'y a pas de colonnes en double ; 2. La deuxième forme normale signifie que les attributs dépendent entièrement du clé primaire ; 3. La troisième forme normale signifie que les attributs ne dépendent pas d'autres attributs non primaires.

Quelle est la différence entre le premier, le deuxième et le troisième paradigme de base de données ?

L'environnement d'exploitation de ce tutoriel : système windows7, version mysql8, ordinateur Dell G3.

Première forme normale (1NF) pas de colonnes en double

La première forme normale (1NF) signifie que chaque colonne de la table de la base de données est indivisible Les éléments de données de base ne peuvent pas avoir plusieurs valeurs dans la même colonne, c'est-à-dire qu'un attribut de l'entité ne peut pas avoir plusieurs valeurs ou des attributs en double. Si des attributs en double apparaissent, vous devrez peut-être définir une nouvelle entité. La nouvelle entité est composée d'attributs en double. Il existe une relation un-à-plusieurs entre la nouvelle entité et l'entité d'origine. Dans la première forme normale (1NF), chaque ligne du tableau contient des informations sur une seule instance. En bref, la première forme normale est une colonne sans doublons.

La définition de 1NF est la suivante : chaque attribut dans une relation conforme à 1NF ne peut pas être subdivisé

La situation présentée dans le tableau suivant ne répond pas aux exigences de 1NF :

Explication : Dans toute base de données relationnelle, la première forme normale (1NF) est l'exigence de base du modèle relationnel. Une base de données qui ne répond pas à la première forme normale (1NF) n'est pas une base de données relationnelle. base de données.

Les attributs de la deuxième forme normale (2NF) dépendent entièrement de la clé primaire

La deuxième forme normale (2NF) est construite sur la base de la première forme normale (1NF) Autrement dit, pour satisfaire la deuxième forme normale (2NF), vous devez d'abord satisfaire la première forme normale (1NF). La deuxième forme normale (2NF) exige que chaque instance ou ligne d'une table de base de données puisse être distinguée de manière unique. Pour réaliser la différenciation, il est généralement nécessaire d'ajouter une colonne au tableau pour stocker l'identifiant unique de chaque instance. Par exemple, une colonne de numéro d'employé (emp_id) est ajoutée à la table d'informations sur les employés. Le numéro d'employé de chaque employé étant unique, chaque employé peut être distingué de manière unique. Cette colonne d'attribut unique est appelée clé primaire ou clé primaire ou clé primaire.
Deuxième Forme Normale (2NF) exige que les attributs d'une entité dépendent entièrement de la clé primaire. La dépendance dite complète signifie qu'il ne peut pas y avoir un attribut qui ne repose que sur une partie de la clé primaire. S'il existe, alors cet attribut et cette partie de la clé primaire doivent être séparés pour former une nouvelle entité. un à plusieurs avec la relation d’entité d’origine. Pour réaliser la différenciation, il est généralement nécessaire d'ajouter une colonne au tableau pour stocker l'identification unique de chaque instance. Bref, la deuxième forme normale est que les attributs dépendent entièrement de la clé primaire.

Troisième forme normale (3NF)

Pour satisfaire la troisième forme normale (3NF), vous devez d'abord satisfaire la deuxième forme normale (2NF). En bref, la troisième forme normale (3NF) exige qu'une table de base de données ne contienne pas d'informations de clé non primaire déjà contenues dans d'autres tables.

Par exemple, il existe un tableau d'informations sur le département, dans lequel chaque département a un numéro de département (dept_id), le nom du département, le profil du département et d'autres informations. Ensuite, une fois le numéro de service répertorié dans le tableau d'informations sur l'employé, le nom du service, le profil du service et d'autres informations relatives au service ne peuvent pas être ajoutés au tableau d'informations sur l'employé. Si le tableau d'informations sur le département n'existe pas, il doit être construit selon la troisième forme normale (3NF), sinon il y aura beaucoup de redondance des données.

En bref, la troisième forme normale est que les attributs ne dépendent pas d'autres attributs non primaires. En d’autres termes, s’il existe une dépendance de fonction de transfert d’attributs non primaires sur le code, celle-ci ne répond pas aux exigences de 3NF.

Explication avec exemples :

Première forme normale

Si tous les attributs d'un schéma relationnel R sont des données de base indivisibles, alors R∈1NF (c'est-à-dire R est conforme à le premier paradigme de forme normale).

Deux points :

1. Chaque champ ne peut stocker qu'une seule valeur

2 Chaque enregistrement doit être identifié par une clé primaire unique

Deuxièmement. Forme normale

Si le modèle relationnel R∈1NF (c'est-à-dire R est conforme à la première forme normale) et que chaque attribut non primaire dépend complètement du code de R, alors R∈2NF (c'est-à-dire R est conforme à la première forme normale) deuxième forme normale).

Troisième forme normale

Si le modèle relationnel R∈3NF (c'est-à-dire R est conforme à la troisième forme normale), alors chaque attribut non primaire ne dépend ni partiellement du code ni transitivement sur le code.

Recommandations d'apprentissage associées : Tutoriel mysql(vidéo)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn