PostgreSQL - INSERT-Abfrage: Ein Leitfaden für Anfänger
Hallo da draußen, zukünftige Datenbank-Zauberer! Heute tauchen wir in die wunderbare Welt von PostgreSQL ein und lernen über eine seiner grundlegendsten Operationen: die INSERT-Abfrage. Machen Sie sich keine Sorgen, wenn Sie neu im Programmieren sind - ich werde Sie Schritt für Schritt führen, genau wie ich es in den letzten Jahren für unzählige Schüler getan habe. Also holen Sie sich eine Tasse Kaffee (oder Tee, wenn das mehr Ihr Ding ist) und lassen Sie uns loslegen!
Was ist eine INSERT-Abfrage?
Bevor wir uns mit der Syntax und Beispielen beschäftigen, lassen Sie uns verstehen, was eine INSERT-Abfrage eigentlich macht. Stellen Sie sich ein großes Buch (das ist unsere Datenbank) mit mehreren Seiten (Tabellen) vor. Eine INSERT-Abfrage ist wie das Schreiben eines neuen Eintrags auf einer dieser Seiten. Es ist die Art und Weise, wie wir neue Informationen in unsere Datenbanktabellen einfügen.
Syntax
Nun schauen wir uns die grundlegende Syntax einer INSERT-Abfrage in PostgreSQL an:
INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...);
Lassen Sie sich davon nicht einschüchtern! Lassen Sie uns das aufschlüsseln:
-
INSERT INTO
: Das ist, wie wir PostgreSQL mitteilen, dass wir neue Daten hinzufügen möchten. -
table_name
: Dies ist der Name der Tabelle, in die wir unsere Daten einfügen möchten. -
(column1, column2, column3, ...)
: Dies sind die Spalten in unserer Tabelle, die wir mit Daten füllen möchten. -
VALUES
: Dieses Schlüsselwort führt die tatsächlichen Daten ein, die wir einfügen. -
(value1, value2, value3, ...)
: Dies sind die Werte, die wir hinzufügen, und die den angegebenen Spalten entsprechen.
Beispiele
Beispiel 1: Einfügen einer einzigen Zeile
Angenommen, wir haben eine Tabelle namens students
mit den Spalten id
, name
und age
. Hier ist, wie wir möglicherweise einen neuen Schüler hinzufügen:
INSERT INTO students (id, name, age)
VALUES (1, 'John Doe', 20);
Was passiert hier? Wir fügen einen neuen Schüler mit der ID 1, dem Namen John Doe und dem Alter 20 hinzu. Es ist, als würde man ein Formular für einen neuen Schüler ausfüllen, der unserer Klasse beitritt!
Beispiel 2: Einfügen mehrerer Zeilen
PostgreSQL ermöglicht es uns, mehrere Zeilen auf einmal einzufügen. Es ist, als würden wir mehrere Schüler gleichzeitig einschreiben:
INSERT INTO students (id, name, age)
VALUES
(2, 'Jane Smith', 22),
(3, 'Bob Johnson', 21),
(4, 'Alice Brown', 23);
Diese Abfrage fügt drei neue Schüler in unsere Tabelle auf einen Schlag hinzu. Effizient, nicht wahr?
Beispiel 3: Einfügen mit Standardwerten
Manchmal haben unsere Tabellen Standardwerte für bestimmte Spalten. Wir können diese weglassen:
INSERT INTO students (name, age)
VALUES ('Charlie Davis', 19);
In diesem Fall wird, wenn unsere id
-Spalte auf Auto-Increment eingestellt ist, PostgreSQL automatisch die nächste verfügbare ID zuweisen.
Ausgabe
Nach der Ausführung einer INSERT-Abfrage gibt PostgreSQL normalerweise eine Nachricht zurück, die angibt, wie viele Zeilen eingefügt wurden. Zum Beispiel:
INSERT 0 1
Das bedeutet, dass eine Zeile erfolgreich eingefügt wurde. Wenn wir mehrere Zeilen eingefügt haben, könnte es so aussehen:
INSERT 0 3
Das bedeutet, dass drei Zeilen hinzugefügt wurden.
Fortgeschrittene INSERT-Techniken
Einfügen von Daten aus einer anderen Tabelle
Manchmal möchten wir möglicherweise Daten von einer Tabelle in eine andere kopieren. PostgreSQL macht das einfach:
INSERT INTO new_students (name, age)
SELECT name, age FROM students WHERE age < 21;
Diese Abfrage kopiert alle Schüler unter 21 von der students
-Tabelle in eine new_students
-Tabelle. Es ist, als würde man eine besondere Klasse für jüngere Schüler erstellen!
Einfügen mit einer RETURNING-Klausel
PostgreSQL hat eine nette Funktion, die es uns ermöglicht, zu sehen, was eingefügt wurde:
INSERT INTO students (name, age)
VALUES ('David Wilson', 24)
RETURNING *;
Diese Abfrage fügt David in unsere Tabelle ein und zeigt uns die komplette Zeile, die hinzugefügt wurde, einschließlich aller Standard- oder automatisch generierten Werte.
Gemeinsame INSERT-Methoden
Hier ist eine Tabelle, die die INSERT-Methoden zusammenfasst, die wir besprochen haben:
Methode | Beschreibung | Beispiel |
---|---|---|
Grundlegendes Einfügen | Fügt eine einzelne Zeile ein | INSERT INTO students (name, age) VALUES ('John Doe', 20); |
Mehrfach-Einfügen | Fügt mehrere Zeilen auf einmal ein | INSERT INTO students (name, age) VALUES ('Jane', 22), ('Bob', 21); |
Einfügen mit Standards | Lässt die Datenbank Standardwerte einfügen | INSERT INTO students (name) VALUES ('Alice'); |
Einfügen aus einer Abfrage | Kopiert Daten aus einer anderen Tabelle | INSERT INTO new_students SELECT * FROM students WHERE age < 21; |
Einfügen mit Returning | Einfügt und gibt die hinzugefügten Daten zurück | INSERT INTO students (name, age) VALUES ('David', 24) RETURNING *; |
Schlussfolgerung
Und da haben Sie es, Leute! Wir haben die Welt der PostgreSQL INSERT-Abfragen durchquert. Vom Hinzufügen eines einzelnen Schülers zu unserer Klasse bis hin zur Einschreibung mehrerer Schüler auf einmal - Sie haben nun die Macht, Ihre Datenbanken mit Leichtigkeit zu füllen.
Erinnern Sie sich daran, Übung macht den Meister. Versuchen Sie, Ihre eigenen Tabellen zu erstellen und verschiedene Arten von Daten einzufügen. Vielleicht erstellen Sie eine Tabelle für Ihre Lieblingsbücher oder Filme und fangen an, sie zu füllen. Bevor Sie es wissen, werden Sie Daten wie ein Profi einfügen!
Frohes Coden und möge Ihre Datenbanken immer gut gefüllt und fehlerfrei sein!
Credits: Image by storyset