Am 14. September 2017 haben wir eine überarbeitete Fassung unserer Datenschutzrichtlinie veröffentlicht. Wenn Sie video2brain.com weiterhin nutzen, erklären Sie sich mit diesem überarbeiteten Dokument einverstanden. Bitte lesen Sie es deshalb sorgfältig durch.

MariaDB Grundkurs

Vorteil relationaler Datenbanken

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Ein Fremd- oder Nachschlageschlüssel stellt einen wesentlichen Vorteil von relationalen Datenbanken dar und dient dazu, Beziehungen zwischen einzelnen Tabellen aufzubauen.

Transkript

Ein wesentlicher Vorteil bei relationalen Datenbanken ist es, Beziehungen zwischen mehreren Tabellen aufbauen zu können. Und den Zusammenhang zwischen dem Primärschlüssel, dem Fremdschlüssel oder Foreign Key und den Beziehungen möchte ich Ihnen in diesem Video versuchen, zu demonstrieren. Es gibt verschiedene Möglichkeiten, Tabellen- und Datenbankplanung darzustellen. Da ist, zum Beispiel, einmal ER-Modell, was eher grafisch orientiert ist, oder eine theoretische Schreibweise, und die Sie sehen hier. Und wenn man sich das mal so anschaut, dann haben wir hier den Tabellennamen, dann gefolgt von einer runden Klammer, die dann sämtliche Spaltenbezeichner beinhaltet. Also wir haben hier die "kunden_id", "name", "vname" und das "geburtsdatum". So, diese eine Tabelle, die kann man ganz gleich natürlich auch mit weiteren Tabellen ergänzen, zum Beispiel, einer Personaltabelle und einer Projekttabelle. Also gehen wir davon aus, wir haben ein Unternehmen, das Unternehmen hat Mitarbeiter oder Personal und führt Projekte durch. So, und da haben wir dann, die Personaltabelle ist genauso aufgebaut wie die Kundentabelle, und das Projekt, das ist so gekennzeichnet, dass wir eine Projekt-ID haben als Primärschlüssel, ein eindeutiger Bezeichner, dann eine Projektbezeichnung so wie ein Projektleiter. So, vergessen wir mal kurzfristig die Kundentabelle und die Projekttabelle, schauen wir uns "personal" einmal an. Hier sieht das dann aus, wenn Daten gespeichert werden, dass die "kunden_id" als Primärschlüssel, zum Beispiel 56, dann "name", "vname", jeweils "Max", "Mustermann", und ja das "geburtsdatum" habe ich jetzt mal weggelassen, und die nächste "kunden_id" - 57, die Susi Schmidt und so weiter und so fort. So, wenn ich jetzt ein Projekt anlege, dann könnte das, zum Beispiel, so aussehen, dass wir als "projekt_id" die Nummer 22 haben, also das 22. Projekt. Das als "bezeichnung" ist ein Messeauftritt, und der zuständige Projektleiter ist der Max Mustermann. Und dieser Max Mustermann wiederum ist der Gleiche aus der Mitarbeiter- oder Personaltabelle. So, jetzt haben wir das erste Problem. Vielleicht erinnern Sie sich daran, dass bei den Datentypen, zum Beispiel, Zeichensätze oder alphanumerische Datentypen weitaus mehr Speicherplatz belegen wie numerische Datentypen und vor allen Dingen Ganzzahldatentypen. Und somit würde jetzt, wenn wir 500 Projekte hätten, die alle der Max Mustermann belegt, natürlich eine Menge Speicherplatz verschenken. Es gibt noch eine zweite Kleinigkeit, die ein Problem darstellt, nämlich wenn der Max Mustermann, zum Beispiel, heiratet beispielsweise die Susi Schmidt, dann wird der Name verändert, und wir müssten dann bei 500 Projekten hier in der Projekttabelle alles per Hand nachtragen. Das kann sicherlich nicht sinnvoll sein. Und da gibt es eine andere Möglichkeit, nämlich anstatt auf die Attribute zu verweisen, die nach dem Primärschlüssel kommen, also quasi flexible Attribute, da verweist man viel besser auf den Primärschlüssel selbst. Und das geschieht hier natürlich auf die 56 und sieht dann so aus. Also anstatt dann den Max Mustermann mitaufzunehmen, nehmen wir als Spalte "projektleiter" den Primärschlüssel aus der "personal"-Tabelle auf. Und hier haben wir die Verbindung. Also wenn man jetzt, zum Beispiel... Ich nehme mal den Stift, so. Wenn man jetzt, zum Beispiel, diese beiden Tabellen miteinander verbindet, dann läuft die Verbindung über den Primärschlüssel Nr. 56 zum Fremdschlüssel Nr.56 in der Tabelle "projekt". Die Bezeichnung zwischen Primärschlüssel, also PK und Fremdschlüssel FK oder Foreign Key, die ist üblich. Und der Primärschlüssel, der zwingt, dass in der Tabelle "personal" die Nummer 56 nur einmal vorkommen kann, das heißt, wenn man sich das Ganze jetzt hier mit einer Eins vorstellt, signalisiert dieser Primärschlüssel das an dieser Stelle. Der Foreign Key bedeutet, dass also zunächst einmal nur ein Index gesetzt wird auf den Primärschlüssel, ein Fremdschlüssel also. Und in der Tabelle "projekt", da ist dieser Bereich kein Primärschlüssel. Das bedeutet, die 56 kann hier beliebig oft vorkommen, denn was ja auch klar ist. Also wenn der Max Mustermann nicht nur für den Messeauftritt zuständig ist, sondern zum Beispiel auch für die Bestimmung eines Werbeetats oder Sonstiges, dann würde er ja mehrmals hier unten auftauchen. So, und das kennzeichnet man dann an der Stelle mit einem "n", und da spricht man von einer 1 zu "n" Beziehung zwischen der Tabelle "personal" und "projekt". Und Sie sehen, das hängt zusammen mit dem Primärschlüssel auf der Seite und dem Foreign Key auf der Seite der nachschlagenden Tabelle. Und das hat diverse Vorteile, dass man eben Speicherplatz spart, aber auch viel, viel bessere und sinnvollere Nachschlagemöglichkeiten in Form von Index-Einträgen vornehmen kann, wie das mit der direkten Schreibweise beispielsweise einfach dem Übertrag des Namens stattfindet. Und das sind so die Einstiege in die Planung einer Datenbank und stellen natürlich nur das rudimentäre Grundgerüst bereit, und der nächste Schritt ist natürlich die Abbildung in der Datenbank mit SQL-Befehlen.

MariaDB Grundkurs

Sehen Sie, wie Sie den populären Datenbankserver einrichten und für erste eigene Projekte nutzen.

4 Std. 41 min (44 Videos)
Derzeit sind keine Feedbacks vorhanden...
 
Software:
MariaDB MariaDB 10.1
Exklusiv für Abo-Kunden
Erscheinungsdatum:29.03.2016
Aktualisiert am:08.05.2017

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!