SQL INSERT INTO-Anweisung
Die SQL INSERT INTO-Anweisung
Die Anweisung INSERT INTO
wird verwendet, um neue Datensätze in eine Tabelle einzufügen.
INSERT INTO Syntax
Die Anweisung INSERT INTO
kann auf zwei Arten geschrieben werden:
1. Geben Sie sowohl die Spaltennamen als auch die einzufügenden Werte an:
INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...);
2. Wenn Sie Werte für alle Spalten der Tabelle hinzufügen, müssen Sie die Spaltennamen in der SQL-Abfrage nicht angeben. Achten Sie jedoch darauf, dass die Reihenfolge der Werte mit der Reihenfolge der Spalten in der Tabelle übereinstimmt. Die Syntax für INSERT INTO
lautet hier:
INSERT INTO table_name
VALUES (value1, value2, value3, ...);
Demodatenbank
Nachfolgend finden Sie eine Auswahl aus der Tabelle "Customers" der Northwind-Beispieldatenbank:
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
89 | White Clover Markets | Karl Jablonski | 305 - 14th Ave. S. Suite 3B | Seattle | 98128 | USA |
90 |
Wilman Kala | Matti Karttunen | Keskuskatu 45 | Helsinki | 21240 | Finland |
91 |
Wolski | Zbyszek | ul. Filtrowa 68 | Walla | 01-012 | Poland |
INSERT INTO Beispiel
Die folgende SQL-Anweisung fügt einen neuen Datensatz in die Tabelle "Customers" ein:
Beispiel
INSERT INTO Customers (CustomerName, ContactName, Address, City, PostalCode, Country)
VALUES ('Cardinal', 'Tom B. Erichsen', 'Skagen 21', 'Stavanger', '4006', 'Norway');
Try it Yourself »
Die Auswahl aus der Tabelle "Customers" sieht nun folgendermaßen aus:
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
89 | White Clover Markets | Karl Jablonski | 305 - 14th Ave. S. Suite 3B | Seattle | 98128 | USA |
90 |
Wilman Kala | Matti Karttunen | Keskuskatu 45 | Helsinki | 21240 | Finland |
91 |
Wolski | Zbyszek | ul. Filtrowa 68 | Walla | 01-012 | Poland |
92 | Cardinal | Tom B. Erichsen | Skagen 21 | Stavanger | 4006 | Norway |
Ist Ihnen aufgefallen, dass wir in das Feld CustomerID keine Zahl eingefügt haben?
Die Spalte CustomerID ist ein Auto-Increment-Feld und wird automatisch generiert, wenn ein neuer Datensatz in die Tabelle eingefügt wird.
Daten nur in bestimmte Spalten einfügen
Es ist auch möglich, Daten nur in bestimmte Spalten einzufügen.
Die folgende SQL-Anweisung fügt einen neuen Datensatz ein, fügt aber nur Daten in die Spalten "CustomerName", "City" und "Country" ein (die CustomerID wird automatisch aktualisiert):
Beispiel
INSERT INTO Customers (CustomerName, City, Country)
VALUES ('Cardinal', 'Stavanger', 'Norway');
Try it Yourself »
Die Auswahl aus der Tabelle "Customers" sieht nun folgendermaßen aus:
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
89 | White Clover Markets | Karl Jablonski | 305 - 14th Ave. S. Suite 3B | Seattle | 98128 | USA |
90 |
Wilman Kala | Matti Karttunen | Keskuskatu 45 | Helsinki | 21240 | Finland |
91 |
Wolski | Zbyszek | ul. Filtrowa 68 | Walla | 01-012 | Poland |
92 | Cardinal | null | null | Stavanger | null | Norway |
Mehrere Zeilen einfügen
Es ist auch möglich, mehrere Zeilen in einer Anweisung einzufügen.
Um mehrere Datenzeilen einzufügen, verwenden wir dieselbe INSERT INTO
-Anweisung, jedoch mit mehreren Werten:
Beispiel
INSERT INTO Customers (CustomerName, ContactName, Address, City, PostalCode, Country)
VALUES
('Cardinal', 'Tom B. Erichsen', 'Skagen 21', 'Stavanger', '4006', 'Norway'),
('Greasy Burger', 'Per Olsen', 'Gateveien 15', 'Sandnes', '4306', 'Norway'),
('Tasty Tee', 'Finn Egan', 'Streetroad 19B', 'Liverpool', 'L1 0AA', 'UK');
Stellen Sie sicher, dass Sie jeden Wertesatz durch ein Komma trennen ,
.
Die Auswahl aus der Tabelle "Customers" sieht nun folgendermaßen aus:
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
89 | White Clover Markets | Karl Jablonski | 305 - 14th Ave. S. Suite 3B | Seattle | 98128 | USA |
90 |
Wilman Kala | Matti Karttunen | Keskuskatu 45 | Helsinki | 21240 | Finland |
91 |
Wolski | Zbyszek | ul. Filtrowa 68 | Walla | 01-012 | Poland |
92 | Cardinal | Tom B. Erichsen | Skagen 21 | Stavanger | 4006 | Norway |
93 | Greasy Burger | Per Olsen | Gateveien 15 | Sandnes | 4306 | Norway |
94 | Tasty Tee | Finn Egan | Streetroad 19B | Liverpool | L1 0AA | UK |
W3Schools SQL Video-Tutorial. INSERT INTO-Anweisung
Dieses Video ist eine Einführung in die INSERT INTO-Anweisung in SQL.
Teil einer Reihe von Video-Tutorials zum Erlernen von SQL für Anfänger!