SQL Schnellstart – Insert Into

Bisher haben wir nur Daten aus unseren Tabellen abgefragt, doch wir müssen irgendwie auch neue Daten einfügen können. Das kannst du mit dem SQL INSERT INTO Schlüsselwort tun!

SQL INSERT INTO Anweisung

Das Schlüsselwort INSERT INTO wird dazu verwendet, um neue Einträge in eine Tabelle hinzuzufügen. Mit dem Schlüsselwort VALUES gibst du dann an, welche Werte du in die Tabelle eintragen möchtest.

SQL INSERT INTO Syntax

Die allgemeine Syntax von INSERT INTO sieht folgendermaßen aus:

INSERT INTO tabellenname (spalte1, spalte2, ..., spalteN)
VALUES (wert1, wert2, ..., wertN);

Wie du siehst, musst du nach dem INSERT INTO den Tabellennamen angeben, in welche du Daten einfügen möchtest. Über das Schlüsselwort VALUES kannst du nun mit einem Komma getrennt die Werte eingeben. Die Reihenfolge orientiert sich dabei an den Spaltennamen, welche du oben angegeben hast.

Du musst oft nicht für jede Spalte einen Wert übergeben, deshalb ist es auch nicht notwendig jede Spalte deiner Tabelle hier aufzuzählen. Beim Erstellen einer Tabelle kannst du jedoch auch angaben, dass ein Wert für eine bestimmte Spalte verpflichtend ist. Diesen Spalten musst du bei INSERT INTO dann zwingend einen Wert übergeben.

Möchtest du für alle Spalten deiner Tabelle in der normalen Reihenfolge übergeben, dann kannst du auch folgende Syntax verwenden:

INSERT INTO tabellenname
VALUES (wert1, wert2, ..., wertN);

SQL INSERT INTO Beispiel

Stell dir vor, du bis Bibliothekar. Alle Bücher deiner Bibliothek werden in einer Tabelle "Bücher" gespeichert. Schau dir folgende Daten an:

Die Tabelle wurde so eingerichtet, dass zumindest ein Titel verpflichtend ist. BuchID wird dagegen automatisch hochgezählt, wenn du nicht explizit einen Wert angibst. Welche Spalten verpflichtend sind kannst du dir in der Tabellendefinition anschauen, dazu aber in einem anderen Artikel mehr.

Nun wird diese SQL-Tutorialreihe als Buch veröffentlicht, welches man in deiner Bibliothek ausleihen kann. Das Buch trägt den Titel "SQL vom Anfänger zum Profi", hat die ISBN "3583858384" , geschrieben vom Autor "Tarik Azzouzi" und gedruckt wird das ganze vom Verlag "Lerneprogrammieren Verlag". Und das Buch ist das vierte Buch in deiner Bibliothek. Folgendermaßen kannst du nun dieses Buch in deinen Bibliotheksbestand aufnehmen.

INSERT INTO Bücher
VALUES (4, 'SQL vom Anfänger zum Profi', '3583858384', 'Lerneprogrammieren Verlag', 'Tarik Azzouzi');

Hier müssen wir nun zu allen Spalten unserer Tabelle einen Wert angeben. Bei der Spalte BuchID musst du beachten, dass diese Zahl nur genau einmal vorkommen darf, weil es sich um einen Primärschlüssel handelt. Es dürfen also keine zwei Bücher mit der BuchID 4 existieren.

Okay, nehmen wir nun an, wir haben die originale und handschriftliche Ausarbeitung der Relativitätstheorie von Albert Einstein. Wir haben nun also keinen Verlag und keine ISBN, folgendermaßen können wir diese Ausarbeitung zu unserem Bücherbestand hinzufügen.

INSERT INTO Bücher (Autor, Titel)
VALUES ('Albert Einstein', 'Ausarbeitung der Relativitätstheorie');

Wie du erkennen kannst, wollen wir nur die Werte vom Autor und Titel übergeben. Die BuchID wird automatisch hochgezählt, weil dies bei der Erstellung der Tabelle so angegeben wurde,

Code-Aufgabe: Füge dein Lieblingsbuch in den Bücherbestand ein.

  1. Füge die jeweiligen Daten eines Buches deiner Wahl in die Tabelle "Bücher" ein.
  2. Nachdem du deine INSERT INTO Anweisung ausgeführt hast, kannst du dies mit "SELECT * FROM Bücher;" überprüfen.

[lp_spoiler title="Lösung anzeigen"]

Eine mögliche Lösung wäre:

INSERT INTO Bücher (Titel, ISBN, Verlag, Autor)
VALUES ('Blackout - Morgen ist es zu spät', '3442380294', 'Blanvalet Taschenbuch Verlag', 'Marc Elsberg');

Wenn du prüfen möchtest, ob der Eintrag korrekt hinzugefügt wurde, kannst du in die letzte Zeile des Editors den SQL-Befehl SELECT * FROM Bücher;  eintragen und ausführen.

[/lp_spoiler]

Fazit

Neben dem Abfragen von Daten wirst du auch häufig neue Datensätze in deine Tabellen eintragen müssen. Mit dem Schlüsselwort INSERT INTO und VALUES weißt du nun wie das geht und auf welche verschiedenen Varianten du dies machen kannst.