Datenbanken

Datenbanken – Grundlagen einfach erklärt

Sei die Erste, die diesen Beitrag teilt!

Hast du dich auch schonmal gefragt, was Datenbanken sind und wozu man sie benötigt? In diesem Beitrag erkläre ich dir auf einfache Weise die Grundlagen zum Thema Datenbanken, sprich was Datenbanken sind und wozu man sie braucht. Außerdem gehe ich auf eine Art von Datenbanken genauer ein. Nämlich die relationalen Datenbanken. Am Ende erkläre ich dir noch den Begriff SQL – Structured Query Language, der oft im Zusammenhang mit Datenbanken auftaucht.


Was bedeutet der Begriff Daten?

Zuerst einmal müssen wir wissen, was überhaupt Daten sind. In der Informatik sind Daten gewisse Informationen, die unterschiedliche Formate aufweisen können. Das können Zahlen, Texte, Bilder oder logische Verknüpfungen sein. Und noch viele mehr.

Jeder von uns kennt Daten, also Informationen, über sich selbst: Name, Alter, Adresse, etc.

Nehmen wir mal die Zahl 23. Diese Zahl könnte alles Mögliche bedeuten. Ohne Kontext bringt uns diese Zahl keine Information. Denken wir an ein Unternehmen, das gewisse Produkte verkauft, dann könnte die Zahl beispielsweise das Alter eines Mitarbeiters sein. Die Zahl könnte aber auch die Menge eines gekauften Produkts bedeuten oder die Hausnummer einer Adresse.

Wir merken also, dass wir einen Kontext, eine gewisse Information brauchen, um mit der Zahl 23 etwas anfangen zu können. Wenn wir diese Zusatzinformation im entsprechenden Kontext haben, dann gehört die Zahl 23 zu den Daten.

Wir merken uns:

Daten sind** Zeichenketten plus zugehörige Informationen.

**Wie bereits gesagt, könnten auch Bilder, Zahlen und so weiter zu den Daten gehören. Aber wir stellen uns erstmal der Einfachheit halber vor, Daten sind Zeichenketten bestehend aus Zahlen, Symbolen, Texten oder Wörter.


Was sind Datenbanken?

Stell dir mal vor, wie viele Daten die Suchmaschine Google beispielsweise speichern muss, damit bei einer Suchanfrage wirklich alle relevanten Webseiten angezeigt werden. Die Daten müssen nicht nur zur Suchanfrage des Benutzers passen, sondern auch schnell gefunden werden.

Allein der Gedanke an diese große Menge von Daten, die man im Internet finden kann, zeigt uns, dass Daten eine sehr große Rolle in unserem Leben, im Internet und in der Wirtschaft spielen.

Der Begriff Datenbank beschreibt also die Art und Weise, wie Daten, die miteinander zusammenhängen, gespeichert und verwaltet werden.

Angenommen, in einem großen Unternehmen werden unzählige Produkte verkauft und das Unternehmen will die Daten, sprich gewisse Informationen, über die Produkte des Unternehmens sinnvoll speichern. Sinnvoll heißt, möglichst effizient und niemand Unbefugtes soll auf die Daten Zugriff haben.

Man will die Informationen schnell finden, eventuell neue Informationen speichern und den Überblick behalten, Dopplungen möchte man vermeiden. Außerdem sollen Daten, die etwas miteinander zu tun haben, in einer gemeinsamen Kategorie wiederzufinden sein. Man sagt dann auch, diese Daten stehen in Relation zueinander.

Wie funktioniert also dieses optimale und effiziente Speichern und Verwalten von Massen von Daten? Das ist gar nicht so einfach. Deshalb kommen sogenannten Datenbanken ins Spiel.

Es gibt viele Möglichkeiten, Daten in einer Datenbank zu speichern. Die häufigste Art von Datenbanken sind die sogenannten relationalen Datenbanken.

Relationale Datenbanken: Grundlagen

Innerhalb einer Datenbank sind Daten in verschiedenen Relationen gespeichert. Das sind Tabellen, die gewisse Eigenschaften aufweisen.

Also wir merken uns: Tabellen in einer relationalen Datenbank heißen Relationen.

Erstmal ist also das Wort Relation nur ein anderer Begriff für Tabelle. Das ist sinnvoll, wenn wir an die Daten eines großen Unternehmens denken. Eine Tabelle könnte zum Beispiel alle Produkte umfassen und diese stehen in einem Zusammenhang, also in Relation.

Das heißt, in der gleichen Tabelle werden Daten gesammelt, die ähnliche Eigenschaften haben. Eine Tabelle könnte alle Mitarbeiter und deren Adresse beinhalten, eine weitere alle Kunden und deren Bestellungen. Würde man einfach alle Daten in eine gemeinsame Tabelle werfen, auch wenn sie nichts miteinander zu tun haben, dann wäre das nicht sehr nützlich.

Wenn ich in diesem Beitrag „Datenbanken“ schreibe, dann meine ich damit ab jetzt immer relationale Datenbanken. Also Datenbanken, in denen die Daten, wie beschrieben, in Relationen (Tabellen) gespeichert sind. Es gibt auch andere Möglichkeiten, die allerdings weniger bekannt und verbreitet sind.

Wer die Grundlagen zum Thema Datenbanken beherrschen will, sollte folgende Fragen ab jetzt beantworten können.

Was sind Daten? Was bedeutet der Begriff „Datenbank“ und „relationale Datenbank“? Wozu benötigt man Datenbanken?


Relationale Datenbanken: Attribute (Eigenschaften) und Keys (Schlüssel) einfach erklärt

Die Grundlagen von Datenbanken versteht man am besten, wenn man sich alles an einem Beispiel durchgeht. Deshalb schauen wir uns mal die folgende einfache Relation (Tabelle) an.

Die Tabelle zeigt eine Reihe von Produkten und deren Attribute (Eigenschaften).

Die Relation zeigt Produkte einer Firma und einige wichtige Eigenschaften dieser, wie zum Beispiel wie viel von einem Produkt auf Lager ist.

Die verschiedenen Daten in der Tabelle haben unterschiedliche Formate. Es gibt Zahlen, Text und Daten (hier im Sinne des Plurals von Datum).

Wenn du wissen willst, wie du diese Tabelle in deinem Datenbankprogramm mithilfe von SQL erstellst, dann schaue diesen Artikel hier an.
Die erste Zeile zeigt uns, welche Eigenschaften überhaupt für jedes Produkt gespeichert werden. Diese Eigenschaften nennt man in diesem Kontext Attribute (von engl. attribute).

Die Tabelle zeigt eine Reihe von Produkten und deren Eigenschaften. Die erste Zeile beinhaltet die Attribute.

Schlüssel (Keys) einer Tabelle

Ganz besonders wichtig ist auch, die einzelnen Produkte in der Tabelle auseinander zu halten. Hier ist die erste Spalte interessant.

Die Tabelle zeigt eine Reihe von Produkten und deren Eigenschaften. Die erste Spalte beinhaltet den Key (Schlüssel)

Die erste Spalte habe ich mit Key markiert. Warum? Weil diese Zahl der Schlüssel ist um ein gewisses Produkt schnell zu finden.

Wichtig ist: Der Key muss eindeutig sein, für jede Zeile. Außerdem muss es für jede Zeile einen Key geben!

Das heißt, es müssen alle Produkte eine Produktnummer haben. Es kann nicht passieren, dass die „Birne“ beispielsweise keine Produktnummer hat. Kurz gesagt, das Feld „Produkt-Nr.“ darf nicht leer sein.

Folglich bekommt jedes Produkt genau eine Nummer zugeordnet. Wir haben hier als Key (Schlüssel) also das Attribut „Produkt-Nr.“ gewählt.

Man spricht von einem Key, der die beiden oben genannten Eigenschaften (eindeutig und nicht-leer) erfüllt, von einem Primary Key, auf Deutsch Primärschlüssel.

Ein Primärschlüssel kann auch eine Kombination mehrerer Eigenschaften (Attribute) sein. Er muss allerdings minimal sein, das heißt ich darf kein Attribut weglassen und es ist immer noch ein Schlüssel. Näheres dazu in einem kommenden Beitrag.

Wenn es keine Spalte gibt, die als sinnvoller Primärschlüssel (primary key) gewählt werden kann, dann ist es möglich, einfach eine Spalte vorne dranzuhängen, die alle natürlichen Zahlen ab 1 aufwärts enthält und somit „künstlich“ einen Primärschlüssel zu erstellen.

Alternativschlüssel in relationalen Datenbanken

Hätten wir anstatt „Produkt-Nr.“ auch ein anderes Attribut zum Schlüssel ernennen können?

Schauen wir uns das Attribut „Anzahl auf Lager“ an. Dann sehen wir, dass Produkt 1 „Traube“ und Produkt 3 „Birne“ genau gleich oft im Lager vorrätig sind. Das ist kein gutes Kriterium, um ein Produkt wiederzufinden. Das Attribut „Anzahl auf Lager“ eignet sich nicht als Schlüssel, da es nicht eindeutig ist.

Ein Alternativschlüssel in unserem Beispiel ist das Attribut „Produktname“. Jedes Produkt, in diesem Fall handelt es sich um Obst, hat einen anderen Produktnamen.

Es könnte allerdings zeitaufwändiger sein, ein Obst mithilfe des Namens zu suchen, da ist die Produktnummer möglicherweise schneller eingetippt.


SQL – Structured Query Language

Wie bereits erwähnt, können wir Daten in einer Datenbank in verschiedenen Relationen speichern und die Daten darin verwalten. Aber wie genau läuft das ab? Was kann man denn überhaupt alles machen mit den Relationen einer Datenbank?

Für das Verwalten von Datenbanken braucht man eine besondere Sprache. Am häufigsten wird SQL verwendet. Die Abkürzung steht für „Structured Query Language“ und bedeutet auf Deutsch so viel wie „strukturierte Abfragesprache“. Wie schon erwähnt, versucht man irgendwas aus seiner Menge an Daten abzufragen und möchte das Ganze eben strukturiert tun und nicht völlig im Datenchaos landen.

SQL ist also eine Datenbanksprache zum Arbeiten in Datenbanken.

Mit SQL kann man bestimmte Daten aus einer Datenbank abfragen oder ergänzen, Elemente löschen, speichern oder überschreiben. Neue Relationen anlegen, aber auch verschiedene Schlüssel zuweisen, Rechte verwalten und vieles mehr.

Als Beispiel erfährst du in diesem Beitrag hier, wie du mit SQL eine Tabelle bzw. Relation erstellst. Mit allgemeinem Code und einem Beispiel.


Danke fürs Lesen! Ich hoffe, der Beitrag hat dir eine einfache Erklärung für die Grundlagen zum Thema relationale Datenbanken und SQL gegeben. In kommenden Beiträgen werde ich noch genauer auf SQL-Server, Datenbankmanagementsysteme (DBMS), verschiedene Keys und viele andere spannende Dinge eingehen.

Die Inhalte sind nach bestem Wissen und Gewissen verfasst und wissenschaftlich recherchiert. Die Informatik ist eine spannende und sehr junge Wissenschaft, die sich ständig ändert. Also müssen wir uns mitentwickeln und unsere Inhalte immer wieder auf Aktualität prüfen. Die hier genannten Inhalte findest du in dem Buch Inside Relational Databases von Mark Whitehorn und Bill Marklyn.


Lust, deine Skills in Microsoft Excel zu verbessern? Schau dir meine Einträge zum Thema Excel an und lerne was Neues dazu!

Hier findest du außerdem viele Beiträge zur Programmiersprache Python, auch für Anfänger*innen geeignet.

Für dich vielleicht ebenfalls interessant...

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert