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 |
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 |
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