Funktionsabhängigkeit in DBMS: Was ist, Typen und Beispiele

Inhaltsverzeichnis:

Anonim

Was ist funktionale Abhängigkeit?

Functional Dependency (FD) ist eine Einschränkung, die die Beziehung eines Attributs zu einem anderen Attribut in einem Datenbankverwaltungssystem (DBMS) bestimmt. Die funktionale Abhängigkeit hilft dabei, die Qualität der Daten in der Datenbank aufrechtzuerhalten. Es spielt eine wichtige Rolle, den Unterschied zwischen gutem und schlechtem Datenbankdesign zu finden.

Eine funktionale Abhängigkeit ist durch einen Pfeil "→" gekennzeichnet. Die funktionale Abhängigkeit von X von Y wird durch X → Y dargestellt. Lassen Sie uns die funktionale Abhängigkeit in DBMS anhand eines Beispiels verstehen.

Beispiel:

Mitarbeiternummer Mitarbeitername Gehalt Stadt
1 Dana 50000 San Francisco
2 Francis 38000 London
3 Andrew 25000 Tokio

Wenn wir in diesem Beispiel den Wert der Mitarbeiternummer kennen, können wir den Namen, die Stadt, das Gehalt usw. des Mitarbeiters abrufen. Auf diese Weise können wir sagen, dass die Stadt, der Name des Mitarbeiters und das Gehalt funktional von der Nummer des Mitarbeiters abhängen.

In diesem Tutorial lernen Sie:

  • Schlüsselbegriffe
  • Regeln funktionaler Abhängigkeiten
  • Arten von funktionalen Abhängigkeiten in DBMS
  • Mehrwertige Abhängigkeit in DBMS
  • Triviale funktionale Abhängigkeit in DBMS
  • Nicht triviale funktionale Abhängigkeit in DBMS
  • Transitive Abhängigkeit in DBMS
  • Was ist Normalisierung?
  • Vorteile der funktionalen Abhängigkeit

Schlüsselbegriffe

Hier sind einige Schlüsselbegriffe für die funktionale Abhängigkeit in der Datenbank:

Schlüsselbegriffe Beschreibung
Axiom Axiome sind eine Reihe von Inferenzregeln, mit denen alle funktionalen Abhängigkeiten von einer relationalen Datenbank abgeleitet werden.
Zersetzung Es ist eine Regel, die vorschlägt, wenn Sie eine Tabelle haben, die zwei Entitäten zu enthalten scheint, die durch denselben Primärschlüssel bestimmt werden, sollten Sie in Betracht ziehen, sie in zwei verschiedene Tabellen aufzuteilen.
Abhängig Es wird auf der rechten Seite des Funktionsabhängigkeitsdiagramms angezeigt.
Bestimmend Es wird auf der linken Seite des Funktionsabhängigkeitsdiagramms angezeigt.
Union Wenn zwei Tabellen getrennt sind und die PK identisch ist, sollten Sie in Betracht ziehen, sie zu platzieren. zusammen

Regeln funktionaler Abhängigkeiten

Nachfolgend sind die drei wichtigsten Regeln für die funktionale Abhängigkeit in der Datenbank aufgeführt:

  • Reflexive Regel -. Wenn X eine Menge von Attributen ist und Y eine Teilmenge von X ist, dann hat X den Wert Y.
  • Augmentationsregel: Wenn x -> y gilt und c Attribut gesetzt ist, gilt auch ac -> bc. Das heißt, Attribute hinzuzufügen, die die grundlegenden Abhängigkeiten nicht ändern.
  • Transitivitätsregel: Diese Regel ist der Transitivitätsregel in der Algebra sehr ähnlich, wenn x -> y gilt und y -> z gilt, dann gilt auch x -> z. X -> y wird als funktional bezeichnet, die y bestimmt.

Arten von funktionalen Abhängigkeiten in DBMS

Es gibt hauptsächlich vier Arten von funktionalen Abhängigkeiten in DBMS. Im Folgenden sind die Arten von funktionalen Abhängigkeiten in DBMS aufgeführt:

  • Mehrwertige Abhängigkeit
  • Triviale funktionale Abhängigkeit
  • Nicht-triviale funktionale Abhängigkeit
  • Transitive Abhängigkeit

Mehrwertige Abhängigkeit in DBMS

Eine mehrwertige Abhängigkeit tritt in der Situation auf, in der mehrere unabhängige mehrwertige Attribute in einer einzelnen Tabelle vorhanden sind. Eine mehrwertige Abhängigkeit ist eine vollständige Einschränkung zwischen zwei Attributgruppen in einer Beziehung. Es erfordert, dass bestimmte Tupel in einer Beziehung vorhanden sind. Betrachten Sie zum Verständnis das folgende Beispiel für mehrwertige Abhängigkeiten.

Beispiel:

Auto Model Maf_year Farbe
H001 2017 Metallisch
H001 2017 Grün
H005 2018 Metallisch
H005 2018 Blau
H010 2015 Metallisch
H033 2012 Grau

In diesem Beispiel sind maf_year und color unabhängig voneinander, jedoch abhängig von car_model. In diesem Beispiel werden diese beiden Spalten als mehrwertig bezeichnet, abhängig von car_model.

Diese Abhängigkeit kann folgendermaßen dargestellt werden:

car_model -> maf_year

car_model-> color

Triviale funktionale Abhängigkeit in DBMS

Die Trivial-Abhängigkeit ist eine Reihe von Attributen, die als Trivial bezeichnet werden, wenn die Menge der Attribute in diesem Attribut enthalten ist.

X -> Y ist also eine triviale funktionale Abhängigkeit, wenn Y eine Teilmenge von X ist. Lassen Sie uns dies anhand eines Beispiels für eine triviale funktionale Abhängigkeit verstehen.

Zum Beispiel:

Emp_id Emp_name
AS555 Harry
AS811 George
AS999 Kevin

Betrachten Sie diese Tabelle mit zwei Spalten Emp_id und Emp_name.

{Emp_id, Emp_name} -> Emp_id ist eine triviale funktionale Abhängigkeit, da Emp_id eine Teilmenge von {Emp_id, Emp_name} ist.

Nicht triviale funktionale Abhängigkeit in DBMS

Eine funktionale Abhängigkeit, die auch als nichttriviale Abhängigkeit bezeichnet wird, tritt auf, wenn A-> B gilt, wenn B keine Teilmenge von A ist. Wenn in einer Beziehung das Attribut B keine Teilmenge des Attributs A ist, wird es als nicht trivial betrachtet Abhängigkeit.

Unternehmen Vorsitzender Alter
Microsoft Satya Nadella 51
Google Sundar Pichai 46
Apfel Tim cook 57

Beispiel:

(Firma} -> {CEO} (wenn wir die Firma kennen, kennen wir den Namen des CEO)

Der CEO ist jedoch keine Teilmenge des Unternehmens und daher eine nicht triviale funktionale Abhängigkeit.

Transitive Abhängigkeit in DBMS

Eine transitive Abhängigkeit ist eine Art funktionaler Abhängigkeit, die auftritt, wenn t indirekt durch zwei funktionale Abhängigkeiten gebildet wird. Lassen Sie uns anhand des folgenden Beispiels für die transitive Abhängigkeit verstehen.

Beispiel:

Unternehmen Vorsitzender Alter
Microsoft Satya Nadella 51
Google Sundar Pichai 46
Alibaba Jack Ma 54

{Firma} -> {CEO} (wenn wir das Unternehmen kennen, kennen wir den Namen des CEO)

{CEO} -> {Alter} Wenn wir den CEO kennen, kennen wir das Alter

Daher gemäß der Regel der transitiven Abhängigkeit:

{Firma} -> {Alter} sollte gelten, das macht Sinn, denn wenn wir den Firmennamen kennen, können wir sein Alter kennen.

Hinweis: Beachten Sie, dass die transitive Abhängigkeit nur in einer Beziehung von drei oder mehr Attributen auftreten kann.

Was ist Normalisierung?

Die Normalisierung ist eine Methode zum Organisieren der Daten in der Datenbank, mit der Sie Datenredundanz-, Einfüge-, Aktualisierungs- und Löschanomalien vermeiden können. Es ist ein Prozess zum Analysieren der Beziehungsschemata basierend auf ihren verschiedenen funktionalen Abhängigkeiten und dem Primärschlüssel.

Die Normalisierung ist der relationalen Datenbanktheorie inhärent. Dies kann dazu führen, dass dieselben Daten in der Datenbank dupliziert werden, was zur Erstellung zusätzlicher Tabellen führen kann.

Vorteile der funktionalen Abhängigkeit

  • Die funktionale Abhängigkeit vermeidet Datenredundanz. Daher werden dieselben Daten nicht an mehreren Stellen in dieser Datenbank wiederholt
  • Es hilft Ihnen, die Qualität der Daten in der Datenbank aufrechtzuerhalten
  • Es hilft Ihnen, Bedeutungen und Einschränkungen von Datenbanken zu definieren
  • Es hilft Ihnen, schlechte Designs zu identifizieren
  • Es hilft Ihnen, die Fakten zum Datenbankdesign zu finden

Zusammenfassung

  • Funktionale Abhängigkeit ist, wenn ein Attribut ein anderes Attribut in einem DBMS-System bestimmt.
  • Axiom, Zerlegung, Abhängigkeit, Determinante, Union sind Schlüsselbegriffe für funktionale Abhängigkeit
  • Vier Arten der funktionalen Abhängigkeit sind 1) mehrwertig 2) trivial 3) nicht trivial 4) transitiv
  • Eine mehrwertige Abhängigkeit tritt in der Situation auf, in der mehrere unabhängige mehrwertige Attribute in einer einzelnen Tabelle vorhanden sind
  • Die Trivial-Abhängigkeit tritt auf, wenn eine Reihe von Attributen als Trivial bezeichnet wird, wenn die Menge der Attribute in diesem Attribut enthalten ist
  • Eine nichttriviale Abhängigkeit tritt auf, wenn A-> B gilt, wobei B keine Teilmenge von A ist
  • Ein Transitiv ist eine Art funktionaler Abhängigkeit, die auftritt, wenn es indirekt durch zwei funktionale Abhängigkeiten gebildet wird
  • Die Normalisierung ist eine Methode zum Organisieren der Daten in der Datenbank, mit der Sie Datenredundanz vermeiden können