Quelle est la troisième forme normale? (Base de données)

Quelle est la troisième forme normale? (Base de données)

La Troisième formulaire normal (bases de données) Il s'agit d'une technique de conception de base de données relationnelle, où les différentes tables qui la composent non seulement répondent à la deuxième forme normale, mais tous leurs attributs ou champs dépendent directement de la clé principale.

Lorsqu'une base de données est conçue, l'objectif principal est de créer une représentation précise des données, des relations entre elles et les restrictions sur les données pertinentes.

Source: Pixabay.com

Pour atteindre cet objectif, certaines techniques de conception de base de données peuvent être utilisées, parmi lesquelles est la normalisation.

Il s'agit d'un processus d'organisation des données dans une base de données pour éviter les redondances et les anomalies possibles dans l'insertion, la mise à jour ou l'élimination des données, générant pour lui une conception simple et stable du modèle conceptuel.

Commence par examiner la relation fonctionnelle ou la dépendance entre les attributs. Ceux-ci décrivent certaines propriétés des données ou la relation entre elles.

[TOC]

Formes normales

La normalisation utilise une série de tests, appelés formes normales, pour aider à identifier le regroupement optimal de ces attributs et enfin à établir l'ensemble de relations adéquates qui soutiennent les exigences de données d'une entreprise

C'est-à-dire que la technique de normalisation est construite autour du concept de manière normale, qui définit un système de restrictions. Si une relation répond normalement aux restrictions d'une manière particulière, il est dit que la relation est de cette manière normale.

Première forme normale (1FN)

On dit qu'un tableau est en 1FN si tous les attributs ou champs à l'intérieur ne contiennent que des valeurs uniques. C'est-à-dire que toute valeur pour chaque attribut doit être indivisible.

Par définition, une base de données relationnelle sera toujours normalisée à la première forme normale, car les valeurs des attributs sont toujours atomiques. Toutes les relations dans une base de données sont en 1FN.

Peut vous servir: constant (programmation): concept, types, exemples

Cependant, quitter la base de données stimule simplement une série de problèmes, tels que la redondance et les anomalies de mise à jour possibles. Les formes normales les plus élevées ont été développées pour corriger ces problèmes.

Deuxième formulaire normal (2FN)

Il traite de l'élimination d'une table les unités circulaires. On dit qu'un rapport est en 2FN s'il est en 1FN et que chaque champ ou attribut ne dépend pas complètement de la clé primaire, ou plus spécifiquement, il est assuré que le tableau a un seul objectif.

Un attribut non la clé est un attribut qui ne fait pas partie de la clé principale d'une relation.

Troisième forme normale (3FN)

Il ne fait pas d'éliminer les dépendances transitives d'un tableau. Autrement dit, éliminer les attributs non clés qui ne dépendent pas de la clé primaire, mais d'un autre attribut.

Une dépendance transitive est un type de dépendance fonctionnelle dans laquelle la valeur d'un attribut ou d'un champ n'est pas déterminée par la valeur d'un autre champ qui n'est pas la clé non plus.

Des valeurs répétées doivent être recherchées dans les attributs non clés pour s'assurer que ces attributs qui ne sont pas la clé ne dépendent pas uniquement de la clé primaire.

On dit que les attributs sont mutuellement indépendants si aucun d'entre eux ne dépend fonctionnellement d'une combinaison d'autres. Cette indépendance mutuelle garantit que les attributs peuvent être mis à jour individuellement, sans danger d'affecter un autre attribut.

Par conséquent, pour qu'un rapport de base de données soit en troisième forme normale, il doit se conformer:

- Toutes les exigences 2FN.

Peut vous servir: ICT dans la maison

- S'il y a des attributs qui ne sont pas liés à la clé primaire, ils doivent être éliminés et placés dans une table séparée, reliant les deux tables via une clé externe. C'est-à-dire qu'il ne devrait pas y avoir de dépendance transitive.

Exemples de troisième forme normale

Exemple 1

Être le tableau étudiant, dont la clé principale est l'identification de l'étudiant (id_sudiant) et est composé des attributs suivants: nom de l'étudiant, rue, ville et code de la possibilité, remplissant les conditions de 2fn.

Dans ce cas, la rue et la ville n'ont pas de relation directe avec la clé d'identité principale, car ils ne sont pas directement liés à l'élève, mais ils dépendent totalement du code postal.

Comme l'étudiant est situé par le site déterminé par Code_postal, la rue et la ville sont liées à cet attribut. En raison de ce deuxième degré de dépendance, il n'est pas nécessaire de stocker ces attributs dans le tableau étudiant.

Créer une nouvelle table

Supposons qu'il y ait plusieurs étudiants situés dans le même code postal, la table des étudiants ayant une immense quantité de dossiers, et il est nécessaire de changer le nom de la rue ou de la ville, alors cette rue ou la ville doit être recherchée et mise à jour tout au long du étudiant en table.

Par exemple, s'il est nécessaire de changer la rue «El Limón» pour «El Limón II», il devra rechercher «El Limón» tout au long de la table des étudiants, puis le mettre à jour «El Limón II».

Trouver dans un énorme tableau et mettre à jour les enregistrements uniques ou multiples nécessiteront beaucoup de temps et, par conséquent, affecteront les performances de la base de données.

Au lieu de cela, ces détails peuvent être obtenus dans une table distincte (carte postale) liée à la table étudiante à l'aide de l'attribut Code_postal.

La table postale aura une quantité relativement plus petite d'enregistrements et n'aura à mettre à jour qu'une fois ce tableau postal. Cela sera automatiquement reflété dans la table des étudiants, simplifiant les bases de données et les consultations. Ainsi, les tables seront en 3FN:

Il peut vous servir: métabusters: caractéristiques, types et exemples

Exemple 2

Être le tableau suivant avec le champ NUM_PROJET comme clé principale et avec des valeurs répétées dans les attributs qui ne sont pas la clé.

La valeur du téléphone est répétée chaque fois que le nom d'un gestionnaire est répété. En effet. Cela dépend vraiment du gestionnaire, et cela dépend à son tour du numéro de projet, ce qui fait une dépendance transitive.

L'attribut Manager_project ne peut pas être une clé possible dans les projets de table car le même gestionnaire gère plus d'un projet. La solution est pour éliminer l'attribut avec des données répétées (téléphone), en créant un tableau séparé.

Les attributs correspondants doivent être regroupés, créant une nouvelle table pour les sauver. Les données sont entrées et il est vérifié que les valeurs qui sont répétées ne font pas partie de la clé primaire. La clé principale pour chaque tableau est établie et, si nécessaire, des clés externes sont ajoutées.

Pour répondre au troisième formulaire normal, un nouveau tableau (gestionnaires) est créé pour résoudre le problème. Les deux tables sont liées via le champ Manager_project:

Les références

  1. Teradata (2019). Premiers, deuxième et troisième formes normales. Pris de: Docs.Téradata.com.
  2. TUTORAL DE CUP (2019). Troisième forme normale (3NF). Tiré de: TutorialCup.com.
  3. Database Dev (2015). Troisième formulaire normal (3NF) - Normalisation de votre base de données. Tiré de: DatabaseDev.co.ROYAUME-UNI.
  4. Conception de DB relationnelle (2019). Introduction à la troisième forme normale. Tiré de: RelationalDBDesign.com.
  5. Dummies (2019). SQL première, deuxième et troisième formulaires normaux. Tiré de: Dummies.com.