Datenbanken

Tabelle (Relation) in SQL erstellen

Sei die Erste, die diesen Beitrag teilt!

Du möchtest endlich Meister der Datenbanken und SQL werden? Super, dann lass uns gemeinsam den ersten Schritt gehen und eine Relation, also eine Tabelle, in deiner Datenbank erstellen.

Ich befasse mich hier mit relationalen Datenbanken, das heißt die Daten werden in Tabellen, die Relationen genannt werden, gespeichert. Für diese Art von Datenbanken wird die Datenbanksprache SQL (eskjuell) verwendet. Und jetzt werden wir zusammen eine Tabelle, also eine Relation, in SQL erstellen.


Falls du nochmal eine Auffrischung brauchst, was relationale Datenbanken sind und wie sie aufgebaut sind, dann empfehle ich dir meinen Artikel: Relationale Datenbanken – Grundlagen einfach erklärt.

Wir starten jetzt erstmal ganz allgemein mit dem Code zum Erstellen einer Tabelle in SQL. Falls dir das zu theoretisch ist, gibts danach noch ein Beispiel, mit dem es hoffentlich anschaulich klarer wird.


Allgemeiner Code zum Erstellen einer Relation in SQL

Nun kann es losgehen. Im besten Fall befindest du dich in deinem Datenbankprogramm. Zum Beispiel SQLite, MySQL, Oracle oder Microsoft Access, und hast das Fenster geöffnet, in welchem du deinen SQL Code schreiben kannst.

Jetzt musst du dir überlegen, welche Eigenschaften (Attribute) deine Elemente in der Tabelle haben sollen. In meinem vorherigen Beitrag habe ich eine Erklärung für dich, was es mit Attributen auf sich hat, falls du dich nicht mehr erinnerst.

Eine Tabelle erstellst du folgendermaßen:

create table in SQL

Schauen wir uns mal an, was da so steht.

Wir beginnen zum Erstellen einer Tabelle (Relation) in SQL immer mit dem Befehl CREATE TABLE. Danach drückst du die Leertaste und schreibst den Namen hin, den deine Tabelle (Relation) haben soll.

Der Begriff Relationsname steht hier einfach als Platzhalter für den Namen deiner Tabelle. Also zum Beispiel kunden, produkte, benutzer, bestellungen, rechnungen etc.

Nun kommt ein wichtiger Schritt. Jetzt wird eine normale Klammer aufgemacht und diese muss auf jeden Fall am Ende wieder geschlossen werden!

Auf meinem Bild siehst du, dass ich die Klammer zum Schließen ganz ans Ende gesetzt habe. Ich habe sie in diesem Beispiel absichtlich etwas eingerückt, dass du die Klammer gut sehen kannst.

Im nächsten Schritt schreibst du die Eigenschaften, die die Tupel, also Elemente deiner Tabelle haben sollen. Jede Eigenschaft, also Attribut, bekommt einen Namen. Anschließend machst du ein Leerzeichen und schreibst hin, um was für einen Datentyp es sich handelt. Danach kommt ein Komma, falls du noch ein weiteres Attribut hinzufügen willst. Die drei Punkte … habe ich hier nur hingemacht, um zu verdeutlichen, dass es natürlich noch mehr als zwei Attribute geben könnte. Diese brauchst du nicht einzugeben.

Wir haben uns bisher noch nicht über Datentypen in SQL genau unterhalten. Deshalb folgt hier nur ein kurzer Überblick.


Datentypen in SQL

Eigenschaften der Inhalte deiner Relation können Zahlen sein, zum Beispiel ganze Zahlen 1,2,3,4,5,6, usw. Diese heißen integer, kurz int. In MySQL wird zwischen bigint und anderen unterschieden. Ich verwende meistens Microsoft Access, dort reicht es lediglich int zu schreiben.

Ein weiterer wichtiger Datentyp sind einfach Wörter, bzw. Zeichenketten oder Buchstabenkombination, die auch Zahlen beinhalten können. Diese nennt man in SQL characters, kurz char. Wenn du im Vorfeld weißt, wie viele Zeichen deine Zeichenkette haben wird, dann schreibst du char hinter dein Attribut. Wenn du es nicht weißt, dann varchar.

Außerdem benötigen char und varchar eine Zahl, die festlegt, wie viel Zeichen eingegeben werden dürfen.

char(10) heißt das Attribut muss genau 10 Zeichen haben, varchar(10) heißt das Attribut darf zwischen 0 und 10 Zeichen haben.

Ein weiterer Datentyp ist ein Datum. Hierfür schreibst du date hinter dein Attribut. Das Datum hat das Format YYY-MM-DD.

Es gibt auch noch weitere Datentypen in SQL, die ich in einem zukünftigen Beitrag erklären werde. Aber für den Einstieg reichen diese völlig aus.

Zum besseren Verständnis schauen wir uns jetzt ein Beispiel an.


Beispiel: SQL-Code allgemein zum Tabellen erstellen

Wir nehmen das Beispiel mit dem Obst aus dem vorherigen Beitrag. Die Relation mit den Produkten sah folgendermaßen aus.

Tabelle mit Produkten

Wir haben also fünf Attribute: Nummer und Name des Produkts, das Datum, seit wann dieses Produkt im Sortiment ist, die Anzahl der gelagerten Produkte und das Datum der nächsten Lieferung.

Wir brauchen also zweimal den Datentyp date, für Produkt-Nr. und Anzahl auf Lager brauchen wir eine ganze Zahl int und schließlich noch der Produktname, die Länge des Namens wissen wir vorher nicht. Deshalb wählen wir hierfür varchar.

Und so sieht der Code aus. Probiere ihn aus und gib ihn in deinem Programm ein.

Tabelle Produkte erstellen in SQL:
create table Produkte in SQL

Ich habe bei der Produkt-Nummer noch dahinter geschrieben, dass es sich hierbei um den Primary Key handelt. Dieser sollte nicht leer sein. Deshalb habe ich NOT NULL PRIMARY KEY angefügt. Lies dir gerne nochmal den vorherigen Artikel durch, falls du dich nicht mehr entsinnen kannst, was PRIMARY KEY bedeutet.


Beispiel: Tabellen erstellen in SQLite (online)

Nehmen wir nochmal das vorherige Beispiel. Ich verwende gerne SQLite zum Arbeiten mit relationalen Datenbanken.

Das kannst du ganz einfach auch tun, denn es gibt eine Webseite auf der du SQLite online verwenden kannst. Klick hier.

Dort gibst du den obigen Code ein:

Anschließend klickst du auf „Run“:

Wenn du dich nicht vertippt hast, dann erscheint auf der Seite deine Tabelle „produkte“:

Und schon hast du deine erste eigene Tabelle (Relation) in SQL erstellt!


Ich hoffe, das Ganze war hilfreich für dich.

Falls du deine Computer-Skills noch vertiefen willst, habe ich hier viele Beiträge zum Thema Excel und hier meine Beiträge zum Programmieren mit der Programmiersprache Python.

Dieser Blog beinhaltet noch nicht so viele Artikel. Ich arbeite ständig an neuen Beiträgen und hoffe, dich bald wiederzusehen. Lass mir gerne einen Kommentar da!

Für dich vielleicht ebenfalls interessant...

Schreibe einen Kommentar

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