web-dev-qa-db-fra.com

Dépendance fonctionnelle et normalisation

J'essaie de trouver une excellente ressource pour étudier la dépendance fonctionnelle et la normalisation. 

Quelqu'un at-il une idée où devrais-je regarder? J'ai de la difficulté à différencier si un FD est en 1NF, 2NF ou 3NF? 

Je lisais Wikipedia et utilisais la recherche Google pour trouver de bonnes recherches, mais je ne trouve personne qui l'explique en termes simples. 

Peut-être que vous pouvez tous partager sur la façon dont vous avez appris la FD et la normalisation au cours de votre vie.

14
aherlambang

Une dépendance fonctionnelle définit une relation fonctionnelle entre attributs. Par exemple: PersonIddétermine fonctionnellement BirthDate(normalement écrit en tant que PersonId -> BirthDate). Une autre façon de le dire est la suivante: il y a exactement une date de naissance pour chaque cas donné d'une personne. Notez que l'inverse peut ou peut ne pas être vrai. Beaucoup de gens peuvent être nés le même jour. Étant donné un BirthDatename__, nous pouvons trouver plusieurs PersonIdpartageant cette date.

Des ensembles de dépendances fonctionnelles peuvent être utilisés pour synthétiser des relations (tables). La définition de Des 3 premières formes normales, y compris la forme normale de Boyce Codd (BCNF), est formulée en termes de Comment un ensemble donné de relations représente les dépendances fonctionnelles. Les quatrième et cinquième formes normales impliquent des dépendances à valeurs multiples (une autre marmite de poissons).

Voici quelques ressources gratuites sur les dépendances fonctionnelles, la normalisation et la conception de bases de données. Soyez prêt à exercer votre cerveau et vos compétences en mathématiques lors de l’étude de cette matière.

Ce qui suit sont des "diaporamas" de divers sites académiques ... 

Ce qui suit sont des papiers académiques. Une lecture plus lourde mais qui en vaut la peine.

Si vous êtes sérieusement intéressé par ce sujet, je vous suggère de dépenser de l'argent pour un bon livre Sur le thème de la conception de bases de données relationnelles. Par exemple: Introduction aux systèmes de bases de données par C.J. Date

32
NealB

Une dépendance fonctionnelle est une contrainte entre les colonnes de votre table. Par exemple dans la table personne:

 SSN | Nom | Date de naissance | Adresse | Numéro de téléphone 
------------------------------------------- ----------------------------- 
 123-98-1234 | Cindy Cry | 15-05-1983 | Los Angeles | 123-456-7891 
 121-45-6145 | John O'Neill | 30-01-1980 | Paris | 568-974-2562 
 658-78-2369 | John Lannoy | 30-01-1980 | Dallas | 963-258-7413 

Ici, la valeur de la colonne SSN (numéro de sécurité sociale) détermine les valeurs des colonnes nom, date de naissance, adresse et numéro de téléphone. Cela signifie que si nous avions deux lignes avec la même valeur dans la colonne SSN , les valeurs dans les colonnes nom, date de naissance, adresse et numéro de téléphone seraient égales à . Une personne avec SSN 123-98-1234 s’appelle toujours Cindy Cry, elle est née le 15-05-1983, et ainsi de suite. Une situation comme celle-ci s'appelle dépendance fonctionnelle .

La notion de dépendances fonctionnelles est utilisée pour définir les deuxième et troisième formes normales ainsi que la forme normale de Boyce-Codd (BCNF).

Pour en savoir plus sur les dépendances fonctionnelles et la normalisation, vous pouvez vous rendre à des ouvrages bien connus, tels que Introduction to Databases by CJ Date, ou à l'un des ouvrages de du H. Garcia-Molina, du trio J.Ullman, J.Widom .

Si vous souhaitez une approche moins formelle, nous commençons une série de publications sur la normalisation des données sur le blog de notre société .

7
Agnieszka

Nous pouvons comprendre la dépendance fonctionnelle de manière à supposer que nous avons deux attributs et qu’un attribut qui dépend totalement de l’autre est appelé dépendance fonctionnelle. 

Dites, prenez un exemple concret. Nous savons que tout le monde a un numéro de sécurité sociale contre le nom de la personne. Disons que Frank est une personne et nous voulons connaître le numéro de sécurité sociale de cette personne, mais la base de données ne pourra pas vous aider avec ces informations car il peut y avoir beaucoup de personnes nommées frank mais nous pouvons déterminer le nom de la personne en fonction du numéro de sécurité sociale. la personne est totalement fonctionnelle et dépend du numéro de sécurité sociale. 

3
SBTec

Une dépendance fonctionnelle n'est pas sous une forme normale. La forme normale est une propriété d'une relation qui satisfait un ensemble donné de FD.

Ne comptez pas sur Wikipedia ou Google. Il y a trop de désinformation et de déchets de sources en ligne. Essayer:

Introduction aux systèmes de bases de données par Chris Date

Problèmes pratiques liés à la gestion de bases de données par Fabian Pascal

3
nvogel

Qu'est-ce que la dépendance fonctionnelle?

Les dépendances fonctionnelles sont essentielles au processus de normalisation. La dépendance fonctionnelle décrit la relation entre les attributs (colonnes) d'une table. En d'autres termes, une dépendance FD: X → Y signifie que les valeurs de Y sont déterminées par les valeurs de X. Deux nuplets partageant les mêmes valeurs de X auront nécessairement les mêmes valeurs de Y. .]  enter image description here

Qu'est-ce que la normalisation de la base de données? 

La normalisation de la base de données est un processus formel pas à pas qui nous permet de décomposer les tables de la base de données de manière à minimiser la redondance des données et les anomalies de mise à jour (voir ci-dessus pour plus d'informations sur les anomalies de mise à jour). 

 enter image description here Courtoisie

2
Premraj

Dépendance fonctionnelle

La dépendance fonctionnelle peut être définie comme une relation existant entre des attributs en relation. Les dépendances fonctionnelles sont utilisées pour créer une relation dans la forme normale de Boyce Codd, abrégée en BCNF. Si C et D sont les attributs de la relation R et que l'attribut C détermine fonctionnellement les attributs D, la dépendance fonctionnelle entre les deux attributs peut être exprimée sous la forme C-> D.

Exemple: en dessous du schéma de personne

personne (national_id, nom, adresse);

Ici national_id détermine fonctionnellement le nom de la personne. La dépendance fonctionnelle est donc national_id -> name;

La dépendance fonctionnelle est importante dans la conception de bases de données relationnelles afin d’éliminer les redondances.

0
rashedcs