2010-08-05 8 views
1

Il existe un lot ou un matériau sur database normalization disponible sur Steve's Class et sur le Web. Cependant, il me semble encore manquer de raisons très précises pour expliquer la normalisation. Par exemple, pour une conception simple telle qu'un élément de table avec un champ Type, il est logique d'avoir le type comme une table distincte. La raison pour laquelle je l'ai transmise était que si à l'avenir il devenait nécessaire d'ajouter des propriétés au Type, ce serait beaucoup plus facile avec une table séparée déjà existante.Vocabulaire de normalisation de la base de données

Y a-t-il d'autres raisons qui peuvent être démontrées comme évidentes?

+1

d id vous obtenez ce que vous vouliez des réponses? – YoK

Répondre

0

This article dit mieux que moi:

Il y a deux objectifs du processus de normalisation: l'élimination des données redondantes (par exemple, stocker les mêmes données dans plus d'une table) et d'assurer les dépendances de données font sens (ne stocker que les données associées dans une table). Ces deux objectifs sont dignes d'intérêt car ils réduisent la quantité d'espace qu'une base de données consomme et garantissent que les données sont stockées logiquement.

0

La normalisation est le processus d'organisation des données dans une base de données. Cela inclut la création de tables et l'établissement de relations entre ces tables selon des règles conçues à la fois pour protéger les données et pour rendre la base de données plus flexible en éliminant la redondance et la dépendance incohérente.

Les données redondantes gaspillent de l'espace disque et créent des problèmes de maintenance. Si des données existant à plusieurs endroits doivent être modifiées, les données doivent être modifiées exactement de la même manière dans tous les emplacements. Une modification d'adresse de client est beaucoup plus facile à mettre en œuvre si ces données sont stockées uniquement dans la table Customers et nulle part ailleurs dans la base de données.

Qu'est-ce qu'une "incohérence de dépendance"? Bien qu'il soit intuitif pour un utilisateur de rechercher dans la table Clients l'adresse d'un client particulier, il peut être illogique d'y rechercher le salaire de l'employé qui fait appel à ce client. Le salaire de l'employé est lié à l'employé, ou à sa charge, et devrait donc être transféré dans la table Employés. Les dépendances incohérentes peuvent rendre les données difficiles d'accès car le chemin de recherche des données peut être manquant ou cassé.

liens suivants peuvent être utiles:

http://support.microsoft.com/kb/283878

http://neerajtripathi.wordpress.com/2010/01/12/normalization-of-data-base/

0

Edgar F. Codd, l'inventeur du modèle relationnel, a introduit le concept de normalisation. Dans ses propres mots:

  1. Pour libérer la collecte des relations d'insertion indésirables, mise à jour et dépendances suppression;
  2. Pour réduire le besoin de restructurer la collection de relations à mesure que de nouveaux types de données sont introduits, et ainsi augmenter la durée de vie des programmes d'application; Rendre le modèle relationnel plus informatif pour les utilisateurs;
  3. Pour rendre la collection de relations neutre aux statistiques de requête, où ces statistiques sont susceptibles de changer au fil du temps.

    - E.F.Codd, "De plus Normalization du modèle Relational Base de données"

Pris mot pour mot de Wikipedia:Database normalization

Questions connexes