Maison  >  Article  >  base de données  >  Normalisation de la base de données

Normalisation de la base de données

Linda Hamilton
Linda Hamiltonoriginal
2024-11-25 00:34:11647parcourir
    La
  • normalisation des bases de données organise les données de manière structurée et cohérente, éliminant la redondance et garantissant l'intégrité des données au sein des bases de données relationnelles. Il facilite la gestion, l'interrogation et la maintenance des bases de données, réduisant ainsi les erreurs.

  • En suivant les règles de normalisation, vous pouvez concevoir des bases de données plus faciles à maintenir et moins sujettes aux erreurs.

Avant de nous plonger dans la normalisation, nous voulions connaître les bases de la base de données relationnelle.

  • Une base de données relationnelle est un type de base de données qui stocke les données dans des tableaux structurés en lignes et en colonnes. Tableau - Collections d'entrées de données associées Lignes - Enregistrements, chaque ligne représente une seule donnée Colonnes - Champs, chaque colonne représente un attribut spécifique des données.

Database Normalization

Clé primaire - Un identifiant unique pour chaque ligne d'un tableau. Garantit que chaque enregistrement peut être identifié de manière unique.
Clé étrangère - Un champ dans une table qui renvoie à la clé primaire d'une autre table, créant une relation entre les deux tables
Database Normalization

Nous avons mentionné que la normalisation vise à éliminer la redondance et les dépendances incohérentes. Qu'est-ce que c'est ?

Données redondantes signifie stocker les mêmes données à plusieurs endroits, ce qui gaspille de l'espace disque et crée des problèmes de maintenance. Si des changements surviennent dans les données, nous devons les mettre à jour partout.

Une

Dépendance incohérente se produit lorsque les données d'une base de données s'appuient sur d'autres données d'une manière imprévisible ou incorrecte. Cela peut provoquer des erreurs et rendre la base de données peu fiable.

  • Forme normale - Chaque règle dans la normalisation de la base de données. Si une base de données suit la première règle de normalisation, elle est en « Première forme normale » (1NF). S’il suit les trois premières règles, il est en « Troisième Forme Normale » (3NF).

Database Normalization

Considérez les formulaires normaux comme des points de contrôle/règles dans un processus, de la même manière qu'un examen de conduite comporte des étapes telles que les apprenants, le stationnement et l'examen routier.

Database Normalization

Première Forme Normale (1NF)

  • Éliminez les groupes répétitifs dans les tableaux individuels.

Database Normalization

  • Créez un tableau distinct pour chaque ensemble de données associées.

Pour normaliser ces données, nous créons des tableaux séparés pour les étudiants et leurs cours :

Database Normalization

  • Identifiez chaque ensemble de données associées avec une clé primaire.

Database Normalization

Deuxième Forme Normale (2NF)

  • Supprimer la dépendance partielle — Chaque colonne non clé doit dépendre de la clé primaire entière, pas seulement d'une partie de celle-ci.

Le 1NF élimine uniquement les groupes répétitifs, pas la redondance. C'est pourquoi il existe 2NF.

Une table est dite en 2NF si elle répond aux critères suivants :
c'est déjà en 1NF
Aucune dépendance partielle. Autrement dit, tous les attributs non clés dépendent entièrement d'une clé primaire.

Database Normalization

Troisième Forme Normale (3NF)

  • Supprime les dépendances transitives en garantissant que les attributs non clés dépendent uniquement de la clé primaire.

  • Nous devons maintenant comprendre la dépendance transitive, qui est la clé pour comprendre la 3NF.

La dépendance transitive se produit lorsqu'un attribut (colonne) dépend d'un autre attribut non clé plutôt que de dépendre directement de la clé primaire.

Database Normalization

3NF nécessite

  1. Le tableau est déjà à 2 NF
  2. Il n'y a pas de dépendances transitives. Cela signifie que ce qui n'est pas clé les attributs ne doivent pas dépendre d'autres attributs non clés.

Database Normalization

Voici la structure finale en 3NF :
Aucune dépendance partielle (car tous les attributs dépendent entièrement de la clé primaire entière dans leurs tables respectives).
Aucune dépendance transitive (car aucun attribut non clé ne dépend d'autres attributs non clés).

Forme normale de clé élémentaire (EKNF)

  • EKNF est une forme plus stricte de 3NF qui garantit que toutes les dépendances fonctionnelles sont élémentaires, ce qui signifie qu'elles sont simples et claires, sans aucune dépendance complexe.

3NF : garantit l'absence de dépendances transitives.
EKNF : affine davantage 3NF en garantissant que toutes les dépendances fonctionnelles sont élémentaires, abordant ainsi les dépendances plus complexes que 3NF pourrait ne pas gérer.

Database Normalization

Forme normale Boyce-Codd (BCNF)

  • Une table est en BCNF si :

    1. Il est en 3NF.
    2. Pour chaque dépendance fonctionnelle ( A —> B ),A doit être une clé candidate (superkey).
  • Superkey : un ensemble d'une ou plusieurs colonnes qui peuvent identifier de manière unique une ligne dans un tableau.
    Dépendance fonctionnelle : une relation dans laquelle un attribut détermine de manière unique un autre attribut.

Quatrième forme normale (4NF)

  • Prochain niveau de forme normale après BCNF.

  • D'autres formes normales concernent les dépendances fonctionnelles, 4NF concerne un type de dépendance plus général connu sous le nom de dépendance à valeurs multiples.

  • Dépendance à valeurs multiples - Se produit lorsqu'un attribut détermine plusieurs valeurs d'un autre attribut indépendamment des autres attributs.

Database Normalization

Cinquième forme normale (5NF)

  • Il est également connu sous le nom de Project-Join Normal Form (PJNF), c'est le plus haut niveau de normalisation. Une table est en 5NF si elle est déjà en 4NF et ne peut pas être décomposée en tables plus petites sans perdre l'intégrité des données. Cela signifie que chaque dépendance de jointure non triviale dans la table est impliquée par les clés candidates.

  • Si nous décomposons ce tableau en tableaux plus petits pour éliminer la redondance, nous devons nous assurer que nous pouvons toujours reconstruire le tableau d'origine sans perdre aucune information. Dans 5NF, cette décomposition est effectuée de telle manière qu'aucune information n'est perdue et que toutes les dépendances de jointure sont préservées. expliquer avec des exemples

Database Normalization

Dénormalisation

  • Les tables peuvent être dénormalisées pour améliorer les performances.

  • La normalisation augmente le nombre de tables et de relations.

  • L'accès à plusieurs tables à travers des relations nécessite plus de traitement que l'accès à une seule table.

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