MySQL INSERT INTO- Anweisung
Die MySQL INSERT INTO-Anweisung
Die INSERT INTO
Anweisung wird verwendet, um neue Datensätze in eine Tabelle einzufügen.
INSERT INTO-Syntax
Es ist möglich, die INSERT INTO
Anweisung auf zwei Arten zu schreiben:
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 nicht in der SQL-Abfrage angeben. Stellen Sie jedoch sicher, dass die Reihenfolge der Werte der Reihenfolge der Spalten in der Tabelle entspricht. Hier
INSERT INTO
wäre die Syntax wie folgt:
INSERT INTO table_name
VALUES (value1, value2, value3, ...);
Demo-Datenbank
Nachfolgend finden Sie eine Auswahl aus der Tabelle "Kunden" in 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 |
EINFÜGEN IN Beispiel
Die folgende SQL-Anweisung fügt einen neuen Datensatz in die Tabelle "Kunden" ein:
Beispiel
INSERT INTO Customers (CustomerName, ContactName, Address, City, PostalCode, Country)
VALUES ('Cardinal', 'Tom B. Erichsen', 'Skagen 21', 'Stavanger', '4006', 'Norway');
Die Auswahl aus der Tabelle „Kunden“ sieht nun so 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 keine Nummer in das Feld CustomerID eingefügt haben?
Die CustomerID-Spalte ist ein Auto-Increment- Feld und wird automatisch generiert, wenn ein neuer Datensatz in die Tabelle eingefügt wird.
Daten nur in angegebene 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 jedoch nur Daten in die Spalten „CustomerName“, „City“ und „Country“ ein (CustomerID wird automatisch aktualisiert):
Beispiel
INSERT INTO Customers (CustomerName, City, Country)
VALUES ('Cardinal', 'Stavanger', 'Norway');
Die Auswahl aus der Tabelle „Kunden“ sieht nun so 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 |