Dépendance fonctionnelle dans les SGBD : qu'est-ce que c'est, types et exemples

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

Dépendance Fonctionnelle (FD) est une contrainte qui détermine la relation d'un attribut à un autre attribut dans un système de gestion de base de données (SGBD). La dépendance fonctionnelle aide à maintenir la qualité des données dans la base de données. Il joue un rôle essentiel pour faire la différence entre une bonne et une mauvaise conception de base de données.

Une dépendance fonctionnelle est désignée par une flèche « → ». La dépendance fonctionnelle de X sur Y est représentée par X → Y. Comprenons la dépendance fonctionnelle dans le SGBD avec un exemple.

Exemple :

Numéro d'employé Nom de l'employé Le salaire Ville
1 Dana 50000 Toulouse
2 Francis 38000 Londres
3 Andrew 25000 Tokyo

Dans cet exemple, si nous connaissons la valeur du numéro d'employé, nous pouvons obtenir le nom de l'employé, la ville, le salaire, etc. Nous pouvons ainsi dire que la ville, le nom de l'employé et le salaire dépendent fonctionnellement du numéro d'employé.

Mots clés

Voici quelques termes clés pour la dépendance fonctionnelle dans la base de données :

Mots clés Description
Axiom Les axiomes sont un ensemble de règles d'inférence utilisées pour déduire toutes les dépendances fonctionnelles sur une base de données relationnelle.
Décomposition C'est une règle qui suggère que si vous avez une table qui semble contenir deux entités déterminées par la même clé primaire, vous devriez envisager de les diviser en deux tables différentes.
Dépendant Il est affiché sur le côté droit du diagramme de dépendance fonctionnelle.
Déterminant Il est affiché sur le côté gauche du diagramme de dépendances fonctionnelles.
syndicat Cela suggère que si deux tables sont séparées et que le PK est le même, vous devriez envisager de les placer. ensemble

Règles de dépendances fonctionnelles

Vous trouverez ci-dessous les trois règles les plus importantes pour la dépendance fonctionnelle dans la base de données :

  • Règle réflexive –. Si X est un ensemble d'attributs et Y est_subset_of X, alors X contient une valeur de Y.
  • Règle d'augmentation : lorsque x -> y est valable et que c est un ensemble d'attributs, alors ac -> bc est également valable. Cela consiste à ajouter des attributs qui ne modifient pas les dépendances de base.
  • Règle de transitivité : Cette règle est très similaire à la règle transitive en algèbre si x -> y est valable et y -> z est valable, alors x -> z est également valable. X -> y est appelé comme fonctionnellement qui détermine y.

Types de dépendances fonctionnelles dans les SGBD

Il existe principalement quatre types de dépendance fonctionnelle dans les SGBD. Voici les types de dépendances fonctionnelles dans le SGBD :

  • Dépendance à valeurs multiples
  • Dépendance fonctionnelle triviale
  • Dépendance fonctionnelle non triviale
  • Dépendance transitive

Dépendance multivaluée dans le SGBD

La dépendance à plusieurs valeurs se produit dans la situation où il existe plusieurs attributs à plusieurs valeurs indépendants dans une seule table. Une dépendance à plusieurs valeurs est une contrainte complète entre deux ensembles d'attributs dans une relation. Cela nécessite que certains tuples soient présents dans une relation. Considérez l'exemple de dépendance à valeurs multiples suivant pour comprendre.

Exemple :

Modèle de voiture Maf_année Couleur
H001 2017 Métallique
H001 2017 Vert
H005 2018 Métallique
H005 2018 Bleu
H010 2015 Métallique
H033 2012 Gris

Dans cet exemple, maf_year et color sont indépendants l'un de l'autre mais dépendent de car_model. Dans cet exemple, ces deux colonnes sont dites à valeurs multiples dépendant de car_model.

Cette dépendance peut être représentée ainsi :

car_model -> maf_year

car_model -> couleur

Dépendance fonctionnelle triviale dans le SGBD

La dépendance triviale est un ensemble d'attributs qui sont appelés triviaux si l'ensemble des attributs est inclus dans cet attribut.

Ainsi, X -> Y est une dépendance fonctionnelle triviale si Y est un sous-ensemble de X. Comprenons avec un exemple de dépendance fonctionnelle triviale.

Par exemple :

Emp_id Emp_name
AS555 Harry
AS811 George
AS999 Kevin

Considérez ce tableau avec deux colonnes Emp_id et Emp_name.

{Emp_id, Emp_name} -> Emp_id est une dépendance fonctionnelle triviale car Emp_id est un sous-ensemble de {Emp_id,Emp_name}.

Dépendance fonctionnelle non triviale dans le SGBD

La dépendance fonctionnelle, également connue sous le nom de dépendance non triviale, se produit lorsque A-> B est vrai où B n'est pas un sous-ensemble de A. Dans une relation, si l'attribut B n'est pas un sous-ensemble de l'attribut A, alors il est considéré comme un sous-ensemble non trivial. dépendance.

Company PDG Âge :
Microsoft Satya Nadella 51
Google Sundar Pichai 46
Apple Tim Cook 57

Exemple :

(Entreprise} -> {CEO} (si nous connaissons l'entreprise, nous connaissons le nom du PDG)

Mais le PDG n'est pas un sous-ensemble de l'entreprise, et il s'agit donc d'une dépendance fonctionnelle non triviale.

Dépendance transitive dans le SGBD

Une dépendance transitive est un type de dépendance fonctionnelle qui se produit lorsque « t » est indirectement formé de deux dépendances fonctionnelles. Comprenons avec l'exemple de dépendance transitive suivant.

Exemple :

Company PDG Âge :
Microsoft Satya Nadella 51
Google Sundar Pichai 46
Alibaba Jack Ma 54

{Entreprise} -> {CEO} (si nous connaissons l'entreprise, nous connaissons le nom de son PDG)

{CEO } -> {Age} Si nous connaissons le PDG, nous connaissons l'âge

Donc selon la règle de dépendance transitive :

{Entreprise} -> {Âge} devrait être valable, cela est logique car si nous connaissons le nom de l'entreprise, nous pouvons connaître son âge.

Remarque : Vous devez vous rappeler que la dépendance transitive ne peut se produire que dans une relation de trois attributs ou plus.

Qu'est-ce que la normalisation ?

La normalisation est une méthode d'organisation des données dans la base de données qui vous aide à éviter les anomalies de redondance, d'insertion, de mise à jour et de suppression de données. Il s'agit d'un processus d'analyse des schémas de relation en fonction de leurs différentes dépendances fonctionnelles et de leur clé primaire.

La normalisation est inhérente à la théorie des bases de données relationnelles. Cela peut avoir pour effet de dupliquer les mêmes données au sein de la base de données, ce qui peut entraîner la création de tables supplémentaires.

Avantages de la dépendance fonctionnelle

  • La dépendance fonctionnelle évite la redondance des données. Par conséquent, les mêmes données ne se répètent pas à plusieurs endroits dans ce base de données
  • Il vous aide à maintenir la qualité des données dans la base de données
  • Il vous aide à définir les significations et les contraintes des bases de données
  • Cela vous aide à identifier les mauvaises conceptions
  • Il vous aide à trouver les faits concernant la conception de la base de données

Résumé

  • La dépendance fonctionnelle se produit lorsqu'un attribut détermine un autre attribut dans un Système SGBD.
  • Axiome, Décomposition, Dépendant, Déterminant, Union sont des termes clés pour la dépendance fonctionnelle
  • Quatre types de dépendance fonctionnelle sont 1) Multivaluée 2) Triviale 3) Non triviale 4) Transitive
  • La dépendance à plusieurs valeurs se produit dans la situation où il existe plusieurs attributs à plusieurs valeurs indépendants dans une seule table.
  • La dépendance triviale se produit lorsqu'un ensemble d'attributs est appelé trivial si l'ensemble d'attributs est inclus dans cet attribut.
  • Une dépendance non triviale se produit lorsque A->B est vrai où B n'est pas un sous-ensemble de A
  • Un transitif est un type de dépendance fonctionnelle qui se produit lorsqu'il est indirectement formé de deux dépendances fonctionnelles.
  • La normalisation est une méthode d'organisation des données dans la base de données qui vous aide à éviter la redondance des données.