/ / Datenbanken sind relational. Das Konzept der relationalen Datenbank

Datenbanken sind relational. Das Konzept der relationalen Datenbank

Das Aufkommen der Computertechnologie in unsererDie Moderne markierte eine Informationsrevolution in allen Bereichen menschlichen Handelns. Um jedoch sicherzustellen, dass im globalen Internet nicht alle Informationen zu unnötigem Müll werden, wurde ein Datenbanksystem erfunden, in dem Materialien sortiert und systematisiert werden, so dass sie leicht gefunden und der Weiterverarbeitung zugeführt werden können. Es gibt drei Haupttypen - Datenbanken relational, hierarchisch, Netzwerk zuweisen.

Grundlegende Modelle

Zurück zur Erstellung von Datenbanken lohnt es sichum zu sagen, dass dieser Prozess ziemlich kompliziert war, beginnt er mit der Entwicklung von programmierbaren Informationsverarbeitungsgeräten. Es ist nicht verwunderlich, dass die Anzahl der Modelle, die gerade mehr erreicht als 50, aber die wichtigsten sind als hierarchische, relationale und Netzwerk sein, die immer noch weit verbreitet in der Praxis verwendet wird. Was sind sie?

Die hierarchische Datenbank hat einen BaumStruktur und ist aus Daten verschiedener Ebenen zusammengestellt, zwischen denen es Links gibt. Das Netzwerkmodell der Datenbank ist eine komplexere Vorlage. Seine Struktur ähnelt einer hierarchischen Struktur, und das Schema wird erweitert und verfeinert. Der Unterschied zwischen ihnen besteht darin, dass die Erbdaten des hierarchischen Modells nur einem Vorfahren zugeordnet werden können und das Netzwerk mehrere haben kann. Die Struktur der relationalen Datenbank ist viel komplizierter. Daher sollte es genauer demontiert werden.

Relationale Datenbankstruktur

Das Grundkonzept einer relationalen Datenbank

Dieses Modell wurde in den 1970er Jahren entwickeltDoktor der Wissenschaft Edgar Codd. Es ist eine logisch strukturierte Tabelle mit Feldern, die die Daten, ihre Beziehungen untereinander, die an ihnen ausgeführten Operationen und vor allem die Regeln beschreiben, die ihre Integrität garantieren. Warum wird das Modell als relational bezeichnet? Es basiert auf Beziehungen (aus dem lateinischen Verhältnis) zwischen den Daten. Es gibt viele Definitionen für diesen Typ von Datenbank. Relationale Tabellen mit Informationen sind viel einfacher zu organisieren und geben Behandlung, anstatt ein Netzwerk oder eine hierarchische Modell. Wie kann das gemacht werden? Es genügt, die Features, Modellstruktur und Eigenschaften relationaler Tabellen zu kennen.

Konzept der relationalen Datenbank

Der Prozess des Modellierens und Komponierens der Grundelemente

Um ein eigenes DBMS zu erstellen, sollten SieVerwenden Sie eines der Modellierungswerkzeuge, überlegen Sie, mit welchen Informationen Sie arbeiten müssen, entwerfen Sie Tabellen und relationale Ein- und Mehrfachbeziehungen zwischen Daten, füllen Sie Entitätszellen und richten Sie primäre Fremdschlüssel ein.

Tabellen modellieren und relational gestaltenDatenbanken werden durch kostenlose Tools wie Workbench, PhpMyAdmin, Case Studio, dbForge Studio erstellt. Nach dem detaillierten Entwurf sollten Sie das grafisch fertige relationale Modell speichern und in den fertigen SQL-Code übersetzen. In diesem Stadium können Sie mit der Datensortierung, -verarbeitung und -systematisierung beginnen.

Entwerfen relationaler Datenbanken

Merkmale, Struktur und Begriffe, die mit dem relationalen Modell verknüpft sind

Jede Quelle beschreibt ihre Elemente auf ihre eigene Art und Weise, um weniger Verwirrung zu stiften, möchte ich einen kleinen Hinweis geben:

  • relationale Platte = Entität;
  • layout = Attribute = Feldnamen = der Titel der Spalten der Entität;
  • entity instance = tuple = record = Zeile des Labels;
  • Attributwert = Einheit Zelle = Feld.

relationaler Datenbankeintrag

Um zu den Eigenschaften einer relationalen Datenbank zu gelangen, sollten Sie wissen, aus welchen Grundkomponenten sie besteht und wozu sie bestimmt sind.

  1. Essenz. Die Tabelle einer relationalen Datenbank kann eins sein und kann eine ganze Reihe von Tabellen sein, die die beschriebenen Objekte dank der darin gespeicherten Daten kennzeichnen. Sie haben eine feste Anzahl von Feldern und eine variable Anzahl von Datensätzen. Die relationale Datenbankmodelltabelle besteht aus Zeilen, Attributen und Layout.
  2. Ein Datensatz ist eine variable Anzahl von Zeilen, die die Daten darstellen, die das beschriebene Objekt kennzeichnen. Die Datensätze werden automatisch vom System nummeriert.
  3. Attribute sind Daten, die eine Beschreibung der Spalten der Entität enthalten.
  4. Feld. Stellt eine Entitätsspalte dar. Ihre Nummer ist ein fester Wert, der zum Zeitpunkt der Erstellung oder Änderung der Tabelle festgelegt wird.

relationale Datenbanktabelle

Wenn Sie nun die konstituierenden Elemente der Tabelle kennen, können Sie zu den Eigenschaften der relationalen Modelldatenbank wechseln:

  • Die Entitäten der relationalen DB sind zweidimensional. Aufgrund dieser Eigenschaft ist es einfach, verschiedene logische und mathematische Operationen durchzuführen.
  • Die Reihenfolge der Werte von Attributen und Datensätzen in der relationalen Tabelle kann beliebig sein.
  • Eine Spalte innerhalb einer relationalen Tabelle muss einen eigenen Namen haben.
  • Alle Daten in der Entitätsspalte haben eine feste Länge und den gleichen Typ.
  • Jeder Datensatz wird im Wesentlichen als ein Datenelement betrachtet.
  • Die Bestandteile der Linien sind in ihrer Art einzigartig. In der relationalen Entität gibt es keine identischen Zeilen.

Basierend auf den Eigenschaften eines relationalen DBMS ist es klar, dass Attributwerte vom selben Typ, Länge, sein müssen. Betrachten wir die Eigenschaften der Werte der Attribute.

Die Hauptmerkmale von relationalen Datenbankfeldern

Feldnamen müssen im Rahmen von. Eindeutig seineine Essenz. Die Attributtypen oder relationalen Datenbankfelder beschreiben, welche Kategoriedaten in den Entitätsfeldern gespeichert sind. Das relationale Datenbankfeld muss eine feste Größe haben, die in Zeichen gezählt wird. Die Parameter und das Format der Attributwerte bestimmen die Art und Weise, in der sie die Daten korrigieren. Immer noch gibt es ein solches Konzept, wie "Maske" oder "eine Vorlage der Eingabe". Es ist beabsichtigt, die Konfiguration der Dateneingabe in den Attributwert zu definieren. Zweifellos sollte beim Schreiben des falschen Datentyps eine Fehlermeldung in das Feld gegeben werden. Außerdem sind den Feldelementen einige Einschränkungen auferlegt - die Bedingungen für die Überprüfung der Genauigkeit und Genauigkeit der Dateneingabe. Es gibt einen obligatorischen Attributwert, der eindeutig mit Daten gefüllt werden muss. Einige Attributlinien können mit NULL-Werten gefüllt werden. Es wird die Erlaubnis erteilt, leere Daten in Feldattribute einzugeben. Wie bei der Fehlerbenachrichtigung gibt es Werte, die vom System automatisch ausgefüllt werden - dies sind die Standarddaten. Um die Suche nach Daten zu beschleunigen, ist ein indiziertes Feld vorgesehen.

Feldtypen für relationale Datenbanken

Ein zweidimensionales relationales Datenbanktabellenschema

Relationales Datenbankschema
Attributname 1Attributname 2Attributname 3Attributname 4Attributname 5
Element_1_1Element_1_2Element_1_3Element_1_4Element_1_5
Element_2_1Element_2_2Element_2_3Element_2_4Element_2_5
Element_3_1Element_3_2Element_3_3Element_3_4Element_3_5

Für ein detailliertes Verständnis des ManagementsystemsModell mit Hilfe von SQL ist am besten, das Schema für ein Beispiel zu betrachten. Wir wissen bereits, was eine relationale Datenbank ist. Der Datensatz in jeder Tabelle ist ein Datenelement. Um Datenredundanz zu vermeiden, müssen Normalisierungsoperationen durchgeführt werden.

Grundregeln für die Normalisierung der relationalen Entität

1. Der Wert des Feldnamens für die relationale Tabelle muss eindeutig und eindeutig sein (die erste Normalform ist 1NF).

2. Für eine Tabelle, die bereits auf 1½ reduziert ist, sollte der Name einer nicht identifizierenden Spalte von der eindeutigen Tabellen-ID (2NF) abhängig sein.

3. Für die gesamte Tabelle, die sich bereits in der 2NF befindet, kann jedes nicht identifizierende Feld nicht von dem Element eines anderen nicht identifizierten Werts (3NF-Entität) abhängen.

Datenbanken: Relationale Beziehungen zwischen Tabellen

Es gibt zwei Haupttypen von Beziehungen zwischen relationalen Tabellen:

  • «Eins-viele». Tritt auf, wenn ein Schlüsseleintrag von Tabelle 1 mit mehreren Instanzen der zweiten Entität übereinstimmt. Das Schlüsselsymbol an einem Ende der Linie zeigt an, dass sich die Entität auf der "Eins" -Seite befindet, das zweite Ende der Linie ist oft mit dem Symbol der Unendlichkeit markiert.

relationale Datenbanken

  • Eine "Multi-Charge" -Beziehung wird gebildet, wenn eine klare logische Interaktion zwischen mehreren Zeilen einer Entität mit einer Anzahl von Datensätzen einer anderen Tabelle besteht.
  • Wenn eine Verbindung zwischen zwei Entitäten bestehtVerkettung "eins zu eins", bedeutet dies, dass die Schlüsselkennung einer Tabelle in einer anderen Entität vorhanden ist, dann sollte eine der Tabellen entfernt werden, es ist überflüssig. Aber manchmal, aus Sicherheitsgründen, teilen Programmierer die zwei Entitäten absichtlich. Daher kann hypothetisch eine Eins-zu-Eins-Beziehung existieren.

Die Existenz von Schlüsseln in einer relationalen Datenbank

Primäre und sekundäre Schlüssel definierenmögliche Datenbankbeziehungen Relationale Datenmodellbeziehungen können nur einen möglichen Schlüssel haben, dies ist der Primärschlüssel. Wie ist er? Der Primärschlüssel ist eine Entitätsspalte oder eine Gruppe von Attributen, über die Sie auf die Daten einer bestimmten Zeile zugreifen können. Es muss eindeutig und eindeutig sein und seine Felder dürfen keine leeren Werte enthalten. Wenn der Primärschlüssel nur aus einem Attribut besteht, wird er als einfach bezeichnet, andernfalls wird er eine Komponente sein.

Neben dem Primärschlüssel gibt es einen externen Schlüssel(Fremdschlüssel) Viele verstehen nicht, was der Unterschied zwischen ihnen ist. Lassen Sie uns diese anhand eines Beispiels genauer analysieren. Also, es gibt 2 Tische: "Dekanat" und "Studenten". Die Essenz des "Dekanats" enthält Felder: "Studenten-ID", "Name" und "Gruppe". Die Tabelle "Schüler" hat solche Attributwerte wie "Name", "Gruppe" und "Durchschnittlicher Ball". Da die Studenten-ID für mehrere Studenten nicht identisch sein kann, ist dieses Feld der Primärschlüssel. "Name" und "Gruppe" aus der Tabelle "Schüler" können für mehrere Personen gleich sein, sie beziehen sich auf die Schüler-ID-Nummer der Entität "Dekanat", so dass sie als Fremdschlüssel verwendet werden können.

Beispiel für ein relationales Datenbankmodell

Zur Verdeutlichung geben wir ein einfaches Beispiel für ein relationales Datenbankmodell, das aus zwei Entitäten besteht. Es gibt eine Tabelle namens "Dekanat".

Die Essenz des Dekanats

Studentenausweis

Name

Die Gruppe

111

Ivanov Oleg Petrowitsch

IN-41

222

Lazarev Ilja Alexandrowitsch

IN-72

333

Konoplev Peter Wassiljewitsch

IN-41

444

Kushnereva Nataliya Igorevna

IN-72

Sie müssen eine Verbindung halten, um zu erhaltenvollständige relationale Datenbank. Der Eintrag "IN-41" sowie "IN-72" kann in der Platte "Dekanat" mehr als einmal vorhanden sein. Name, Vorname und Bevormundung der Schüler können in seltenen Fällen übereinstimmen, daher können diese Felder nicht zum Primärschlüssel gemacht werden. Wir zeigen die Essenz von "Studenten".

"Studenten" -Tabelle

Name

Die Gruppe

Durchschnittlicher Ball

Telefon

Ivanov Oleg Petrowitsch

IN-41

3,0

2-27-36

Lazarev Ilja Alexandrowitsch

IN-72

3,8

2-36-82

Konoplev Peter Wassiljewitsch

IN-41

3,9

2-54-78

Kushnereva Nataliya Igorevna

IN-72

4,7

2-65-25

Wie wir sehen, die Feldtypen relationaler Datenbankenganz anders. Es gibt sowohl digitale Einträge als auch Zeichen. Daher sollten Sie in den Attributeinstellungen die Werte Ganzzahl, Zeichen, Vachar, Datum und andere Werte angeben. In der "Dean" -Tabelle ist nur die Studenten-ID ein eindeutiger Wert. Dieses Feld kann als Primärschlüssel verwendet werden. Der vollständige Name, die Gruppe und die Telefonnummer der Entität „Studenten“ können als Fremdschlüssel verwendet werden, der sich auf die Studenten-ID bezieht. Verbindung hergestellt Dies ist ein Beispiel für ein Eins-zu-Eins-Modell. Hypothetisch ist eine der Tabellen überflüssig, sie können leicht zu einer Entität kombiniert werden. Damit Studentenausweise nicht allgemein bekannt werden, ist die Existenz von zwei Tabellen durchaus realistisch.

Lesen Sie mehr: