Aus dem Kurs: MariaDB Grundkurs

Primärschlüssel anlegen – Tutorial zu MariaDB

Aus dem Kurs: MariaDB Grundkurs

Primärschlüssel anlegen

Der große Unterschied beim Datenbankdesign mit relationalen Datenbanken gegenüber der Datenspeicherung, sagen wir mal in Tabellenkalkulationen, besteht darin, dass die Hauptaufgabe des Datenbankdesigns darin liegt, Datenredundanz zu vermeiden. Und damit meint man die mehrfache Speicherung gleicher Datenbestände, die soll auf ein Minimum reduziert werden. Wie gesagt, das lässt sich nicht ganz vermeiden, aber das Minimum ist wichtig. Und das hat auch etwas indirekt mit den Datentypen zu tun. Denn alles, was mit Zahlenmaterial gespeichert werden kann, benötigt grundsätzlich weniger Speicherplatz im System, wie z.B. Text- oder BLOB-Werte sogar. Und entsprechend versucht man nun über bestimmte Schlüsselwerte genau diese Arbeit zu beginnen und einzuleiten. Und einer der wichtigsten Schlüsselwerte in der Datenbank bzw. beim Datenbankdesign sind Primär- und Sekundärschlüssel. In diesem Video zeige ich Ihnen, wie Sie einen Primärschlüssel anlegen. Und zwar haben wir ja hier unsere Spalte id in der Tabelle baeume. Und diese Tabelle hat im Moment keinen Primärschlüssel. Das zeigt schon auf, dass man auch keinen benötigt, wenn man das nicht möchte. Aber das ist nicht empfehlenswert. Wofür ist diese Spalte überhaupt notwendig? Grundsätzlich hat sie zwei Aufgaben, nämlich einmal die Datenbestände in dieser Spalte automatisch zu kontrollieren, dass sie nicht doppelt vorkommen dürfen und können, es gibt dann eine Fehlermeldung bei der Anlage eines neuen Datensatzes, und eben Verknüpfungen zu anderen Tabellen herzustellen. Das sind die wichtigsten Aufgaben, die der Primärschlüssel hat. Okay, schauen wir uns das kurz an. Es ist ganz einfach, einen Primärschlüssel mit HeidiSQL anzulegen. Mit SQL hat man ein bisschen mehr Schreibarbeit, aber auch kein Hexenwerk. Klicken Sie zur Anlage eines Primärschlüssels mit der rechten Maustaste hier auf dieses Feld. Und dann sagen Sie "Neuer Index" > Primary. Und das war es schon. Und dann haben wir hier einen Primärschlüssel bei Indizes eingeführt. Wir sehen hier unten, da gibt es das Ganze dann auch entsprechend, wenn wir das jetzt speichern, als SQL-Statement. Das mache ich jetzt erst mal, speichere das. Und hier sehen wir diesen ganzen Eintrag, den wir jetzt durchführen müssen oder den wir, besser gesagt, schreiben müssten, um nun hier einen Primärschlüssel nachträglich einzufügen. Es ist ein bisschen Aufwand, aber auch kein Hexenwerk. Mit HeidiSQL oder anderen grafischen Oberflächen geht das natürlich ruckzuck. Ja, auf jeden Fall, wir haben jetzt hier einen Primärschlüssel und dieser Primärschlüssel verweist auf das Feld id. Für das grundlegende Verständnis wichtig: Stellen Sie sich vor, Sie möchten Adressen in einer Datenbank speichern. Dann kann es ja vorkommen, dass gleiche Adressen in den Datensätzen existieren, beispielsweise wohnt der Sohn oder die Tochter beim Vater oder der Mutter. Und beide Datensätze sind im Prinzip identisch. Also stellen wir uns einmal vor, der Sohn heißt Frank, der Vater heißt Frank oder die Tochter heißt Susanne und die Mutter heißt Susanne, dann sind die Adressdatensätze völlig identisch, obwohl es sich um unterschiedliche Personen handelt. Bei Mitarbeitern könnte man das gleiche Beispiel nehmen. Genau dafür kann man eine ID oder einen Primärschlüssel anlegen. Da verwenden Sie nun eine Nummer, quasi so eine Art Personalnummer oder einfach nur eine Datensatznummer. Und jeder Datensatz mit einer neuen ID, mit einem neuen Primärschlüssel, ist auch ein anderer Datensatz, ganz gleich, ob die Inhalte identisch sind. Und somit stellt eben ein Datenbanksystem automatisch sicher, dass ich nicht gleichzeitig mehrere identische Datensätze anlege, indem ich die gleichen z.B. Kundennummern vergebe oder die gleichen Personalnummern. Das zum grundlegenden Verständnis zum Primärschlüssel.

Inhalt