Relationales Datenmodell in DBMS: Concepts & Beispiel

โšก Intelligente Zusammenfassung

Das relationale Modell stellt eine Datenbank als eine Sammlung von Relationen dar, wobei jede Relation eine Tabelle mit Zeilen und Spalten ist. Es definiert Kernkonzepte, Integritรคtsbedingungen und Aktualisierungsoperationen, die die Konsistenz der relationalen Daten gewรคhrleisten und deren Abfrage vereinfachen.

  • ๐Ÿ—ƒ๏ธ Kernidee: Die Daten werden als Relationen gespeichert, und jede Zeile ist ein Tupel, das eine reale Entitรคt oder Beziehung beschreibt.
  • ๐Ÿท๏ธ Schlรผsselbegriffe: Attribut, Tupel, Grad, Kardinalitรคt, Domรคne und Relationsschlรผssel beschreiben zusammen die Form einer Tabelle.
  • ๐Ÿ›ก๏ธ Drei Einschrรคnkungen: Domรคnen-, Schlรผssel- und referenzielle Integritรคtsbedingungen gewรคhrleisten die Gรผltigkeit jeder Relation.
  • ๐Ÿ”‘ Schlรผsselverknรผpfungstabellen: Ein Primรคrschlรผssel identifiziert eine Zeile eindeutig, ein Fremdschlรผssel verweist auf einen Schlรผssel in einer anderen Relation.
  • ๐Ÿ”„ Vier Operanationen: Einfรผgen, Aktualisieren, Lรถschen und Auswรคhlen von Beziehungen, ohne die definierten Einschrรคnkungen zu verletzen.
  • โœ… Gestaltungsregeln: Ein Wert pro Zelle, eindeutige Spaltennamen, keine doppelten Zeilen und Werte aus einer einzigen Domรคne.
  • ๐Ÿ“ˆ Warum es gewinnt: Einfachheit, strukturelle Unabhรคngigkeit, eine Abfragesprache auf hohem Niveau und Datenunabhรคngigkeit.

Relationales Datenmodell im DBMS

Was ist das relationale Modell?

Relationales Modell (RM) stellt die Datenbank als eine Sammlung von Beziehungen dar. Eine Relation ist nichts anderes als eine Wertetabelle. Jede Zeile in der Tabelle stellt eine Sammlung zusammengehรถriger Datenwerte dar. Diese Zeilen in der Tabelle bezeichnen eine reale Entitรคt oder Beziehung.

Tabellen- und Spaltennamen helfen, die Bedeutung der Werte in jeder Zeile zu interpretieren. Die Daten werden als Menge von Relationen dargestellt. Im relationalen Modell werden Daten als Tabellen gespeichert. Die physische Speicherung der Daten ist jedoch unabhรคngig von ihrer logischen Organisation.

Das Modell wurde 1970 von EF Codd vorgeschlagen und bildet bis heute die Grundlage fast aller gรคngigen Datenbanken. Einige gรคngige relationale Datenbankmanagementsysteme sind:

  • DB2 und Informix Dynamic Server โ€“ IBM
  • Oracle und RDB โ€“ Oracle
  • SQL Server und Zugriff โ€“ Microsoft

Relationales Modell Concepts im DBMS

  1. Attribut: Jede Spalte einer Tabelle. Attribute sind die Eigenschaften, die eine Beziehung definieren, z. B. Matrikelnummer, Name usw.
  2. Tabellen: Im relationalen Modell werden Relationen in Tabellenform gespeichert. Sie werden zusammen mit ihren Entitรคten abgelegt. Eine Tabelle besitzt zwei Eigenschaften: Zeilen und Spalten. Zeilen reprรคsentieren Datensรคtze und Spalten Attribute.
  3. Tupel: Es handelt sich lediglich um eine einzelne Zeile einer Tabelle, die einen einzelnen Datensatz enthรคlt.
  4. Beziehungsschema: Ein Relationsschema reprรคsentiert den Namen der Relation mit ihren Attributen.
  5. Abschluss: Die Gesamtzahl der Attribute in der Relation wird als Grad der Relation bezeichnet.
  6. Kardinalitรคt: Die Gesamtzahl der Zeilen in der Tabelle.
  7. Sรคule: Die Spalte stellt den Wertesatz fรผr ein bestimmtes Attribut dar.
  8. Beziehungsinstanz: Eine Relationsinstanz ist eine endliche Menge von Tupeln in einem relationalen Datenbankmanagementsystem. Relationsinstanzen enthalten niemals doppelte Tupel.
  9. Beziehungsschlรผssel: Jede Zeile hat ein, zwei oder mehrere Attribute, die als Beziehungsschlรผssel bezeichnet werden.
  10. Attributdomรคne: Jedes Attribut hat einen vordefinierten Wert und einen vordefinierten Gรผltigkeitsbereich, der als Attributdomรคne bezeichnet wird.

Konzepte des relationalen Modells, dargestellt in einer Tabelle

Nachdem der Wortschatz vorhanden ist, besteht die nรคchste Herausforderung darin, ihn beizubehalten.ping Die Daten in diesen Relationen mรผssen gรผltig sein; dies ist die Aufgabe von Integritรคtsbedingungen.

Relational Integrity Einschrรคnkungen

Relationale Integritรคtsbedingungen in Datenbankmanagementsystemen (DBMS) bezeichnen Bedingungen, die fรผr eine gรผltige Relation erfรผllt sein mรผssen. Diese relationalen Bedingungen werden aus den Regeln der Miniwelt abgeleitet, die die Datenbank reprรคsentiert.

Es gibt viele Arten von Integritรคtsbedingungen. Die Bedingungen fรผr relationale Datenbankmanagementsysteme lassen sich hauptsรคchlich in drei Kategorien unterteilen:

  1. Domรคneneinschrรคnkungen
  2. Wichtige Einschrรคnkungen
  3. Referent Integrity Einschrรคnkungen

Domรคneneinschrรคnkungen

Domรคnenbeschrรคnkungen kรถnnen verletzt werden, wenn ein Attributwert nicht in der entsprechenden Domรคne vorkommt oder wenn er nicht den passenden Datentyp hat.

Domรคnenbeschrรคnkungen legen fest, dass innerhalb jedes Tupels der Wert jedes Attributs atomar sein und aus der korrekten Domรคne stammen muss. Domรคnen werden als Datentypen definiert, darunter Standardtypen wie ganze Zahlen, reelle Zahlen, Zeichen, boolesche Werte und Zeichenketten variabler Lรคnge.

Ejemplo:

CREATE DOMAIN CustomerName
CHECK (value NOT NULL)

Das gezeigte Beispiel veranschaulicht die Erstellung einer Domรคnenbeschrรคnkung, sodass CustomerName nicht NULL ist.

Wichtige Einschrรคnkungen

Ein Attribut, das ein Tupel in einer Beziehung eindeutig identifizieren kann, wird als Schlรผssel der Tabelle bezeichnet. Der Wert des Attributs fรผr verschiedene Tupel in der Beziehung muss eindeutig sein.

Ejemplo:

In der gegebenen Tabelle ist CustomerID ein Schlรผsselattribut der Kundentabelle. Es gibt hรถchstwahrscheinlich genau einen Schlรผssel fรผr jeden Kunden; CustomerID = 1 gilt nur fรผr den Kundennamen โ€žCustomerNameโ€œ.GoogleEine ausfรผhrliche Beschreibung der verschiedenen Schlรผsseltypen findet sich im Leitfaden zu DBMS-Schlรผssel.

Kundennummer Kundenname Status
1 Google Aktives
2 Amazon Aktives
3 Apple Inaktiv

Referent Integrity Einschrรคnkungen

Referenzielle Integritรคtsbedingungen in Datenbankmanagementsystemen basieren auf dem Konzept von Fremdschlรผsseln. Ein Fremdschlรผssel ist ein wichtiges Attribut einer Relation, auf das in anderen Relationen verwiesen werden muss. Eine referenzielle Integritรคtsbedingung liegt vor, wenn eine Relation auf ein Schlรผsselattribut einer anderen oder derselben Relation verweist. Dieses Schlรผsselelement muss in der referenzierten Tabelle vorhanden sein.

Ejemplo:

Referenzielle Integritรคt zwischen Kunde und BillBeziehungen

Im obigen Beispiel haben wir zwei Relationen, Kunde und Billing.

Das Tupel fรผr CustomerID = 1 wird in der Relation zweimal referenziert. BillWir kennen also den Kundennamen.Googleโ€žhat einen Rechnungsbetrag von 300 Dollar.โ€œ

Operationen im relationalen Modell

Im relationalen Datenbankmodell werden vier grundlegende Aktualisierungsoperationen durchgefรผhrt: Einfรผgen, Aktualisieren, Lรถschen und Auswรคhlen.

  • Mit der Funktion โ€žInsertโ€œ werden Daten in die Relation eingefรผgt.
  • Mit โ€žDeleteโ€œ werden Tupel aus der Tabelle gelรถscht.
  • Mit โ€žร„ndernโ€œ kรถnnen Sie die Werte einiger Attribute in vorhandenen Tupeln รคndern.
  • Mit โ€žAuswรคhlenโ€œ kรถnnen Sie einen bestimmten Datenbereich auswรคhlen.

Bei jeder Anwendung einer dieser Operationen dรผrfen die fรผr das relationale Datenbankschema festgelegten Integritรคtsbedingungen keinesfalls verletzt werden.

Insert OperaProduktion

Die Einfรผgeoperation liefert die Werte der Attribute fรผr ein neues Tupel, das in eine Relation eingefรผgt werden soll.

Einfรผgeoperation: Hinzufรผgen eines neuen Tupels zu einer Relation

Update OperaProduktion

Sie kรถnnen in der untenstehenden Beziehungstabelle sehen, dass der Kundenname 'Apple' von Inaktiv auf Aktiv aktualisiert wurde.

Aktualisierungsoperation, die einen Statuswert in einem Tupel รคndert

Lรถschen OperaProduktion

Um das Lรถschen anzugeben, wรคhlt eine Bedingung fรผr die Attribute der Beziehung das zu lรถschende Tupel aus.

Lรถschoperation: Entfernen eines Tupels aus einer Relation

Im obigen Beispiel wird der Kundenname โ€žAppleโ€œ aus der Tabelle gelรถscht.

Der Lรถschvorgang kรถnnte die referenzielle Integritรคt verletzen, wenn das zu lรถschende Tupel von Fremdschlรผsseln anderer Tupel im selben Datensatz referenziert wird. Datenbank.

Auswรคhlen OperaProduktion

Auswahloperation, die ein bestimmtes Tupel auswรคhlt

Im obigen Beispiel ist CustomerName โ€žAmazon" ist ausgewรคhlt.

Relationales Modell vs. hierarchische und Netzwerkmodelle

Das relationale Modell ersetzte zwei frรผhere Ansรคtze, und der Kontrast erklรคrt, warum es sich durchsetzte. Die folgende Tabelle vergleicht die drei Ansรคtze.

Aspekt Relationales Modell Hierarchisches Modell Netzwerkmodell
Struktur Tabellen (Relationen) Baumstruktur, Eltern-Kind-Zustand Graph, viele zu vielen
Datenzugriff Deklarativ, per Wert Navigation, nach Weg Navigation, per Zeiger
Beziehungen Fremde Schlรผssel Eltern-Kind-Verbindungen Mengen und Zeiger
Abfragesprache SQL Verfahrensordnung Verfahrensordnung
Flexibilitรคt Hoch Niedrig Medium

Da das relationale Modell Daten anhand ihres Wertes und nicht durch die Navigation physischer Verbindungen adressiert, ist eine hรถhere Programmiersprache wie SQL kann eine Anfrage formulieren, ohne zu wissen, wie die Daten gespeichert sind.

Best Practices fรผr die Erstellung eines relationalen Modells

  • Daten mรผssen als eine Sammlung von Relationen dargestellt werden.
  • Jede Beziehung sollte in der Tabelle klar dargestellt werden.
  • Die Zeilen sollten Daten รผber Instanzen einer Entitรคt enthalten.
  • Die Spalten mรผssen Daten รผber Attribute der Entitรคt enthalten.
  • Die Zellen der Tabelle sollten jeweils einen einzelnen Wert enthalten.
  • Jeder Spalte sollte ein eindeutiger Name gegeben werden.
  • Keine zwei Reihen kรถnnen identisch sein.
  • Die Werte eines Attributs sollten aus derselben Domรคne stammen.

Vorteile des relationalen Datenbankmodells

  • Einfachheit: Ein relationales Datenmodell in einem DBMS ist einfacher als die hierarchischen und Netzwerkmodelle.
  • Strukturelle Unabhรคngigkeit: Die relationale Datenbank befasst sich ausschlieรŸlich mit Daten und nicht mit deren Struktur, was die Leistungsfรคhigkeit des Modells verbessern kann.
  • Einfach zu verwenden: Das relationale Modell ist einfach anzuwenden, da Tabellen, die aus Zeilen und Spalten bestehen, natรผrlich und leicht verstรคndlich sind.
  • Abfragefunktion: Dadurch wird es einer Abfragesprache auf hรถherer Ebene wie SQL ermรถglicht, komplexe Datenbanknavigationen zu vermeiden.
  • Datenunabhรคngigkeit: Die Struktur einer relationalen Datenbank kann geรคndert werden, ohne dass ร„nderungen an der Anwendung erforderlich sind.
  • Skalierbar: Hinsichtlich der Anzahl der Datensรคtze bzw. Zeilen und der Anzahl der Felder kann eine Datenbank vergrรถรŸert werden, um ihre Benutzerfreundlichkeit zu verbessern.

Nachteile des relationalen Modells

  • Nur wenige relationale Datenbanken haben Beschrรคnkungen hinsichtlich der Feldlรคnge, die nicht รผberschritten werden dรผrfen.
  • Relationale Datenbanken kรถnnen mitunter komplex werden, wenn die Datenmenge wรคchst und die Beziehungen zwischen den Datenelementen komplizierter werden.
  • Komplexe relationale Datenbanksysteme kรถnnen zu isolierten Datenbanken fรผhren, in denen Informationen nicht zwischen den Systemen ausgetauscht werden kรถnnen.

Hรคufig gestellte Fragen

Der Grad einer Relation gibt die Anzahl der Attribute oder Spalten an. Die Kardinalitรคt hingegen die Anzahl der Tupel oder Zeilen. Der Grad beschreibt die Breite der Tabelle, die Kardinalitรคt ihre Hรถhe.

Eine Relation ist eine mathematische Menge, und Mengen enthalten keine doppelten Elemente. Der Primรคrschlรผssel stellt dies sicher, sodass jedes Tupel eindeutig identifiziert wird und keine zwei Zeilen identisch sind.

KI-Modelle werden hรคufig mit Merkmalen trainiert, die รผber SQL-Joins und -Aggregationen aus relationalen Tabellen extrahiert werden. KI kann auch eine einfache englische Frage in SQL รผbersetzen, sodass technisch nicht versierte Benutzer direkt Abfragen รผber relationale Tabellen durchfรผhren kรถnnen.

Ja. Anhand von Beispieldaten oder Anforderungen kann die KI Tabellen, Primรคr- und Fremdschlรผssel sowie eine Normalform vorschlagen. Das Ergebnis muss jedoch noch รผberprรผft werden, da die Normalisierung von Geschรคftsregeln abhรคngt, die der KI mรถglicherweise nicht bekannt sind.

In der Praxis werden die Begriffe synonym verwendet. Formal ist eine Relation eine Menge von Tupeln ohne Reihenfolge und ohne Duplikate, wรคhrend eine Tabelle deren physische Darstellung ist, die Zeilen in einer gespeicherten Reihenfolge anzeigen kann.

Fassen Sie diesen Beitrag mit folgenden Worten zusammen: