Um Daten innerhalb deiner SQL-Tabelle einzufügen, kannst du die INSERT INTO-Abfrage verwenden. Aber wie funktioniert das dann? Das werden wir uns in diesem Artikel ansehen.
Was ist die INSERT INTO-Abfrage?
INSERT INTO SQL ist einer der am häufigsten verwendeten Befehle in der SQL-Sprache. Und das aus gutem Grund, denn mit dieser Abfrage kannst du neue Datensätze in deine Datenbank einfügen. Je nach Bedarf kann es sich dabei um eine oder mehrere Zeilen handeln.
Gut zu wissen: INSERT INTO SQL ist der Befehl, den du für alle Datenbankverwaltungssysteme verwenden solltest. Und zwar unabhängig davon, ob du Oracle, Mysql, Transact-SQL usw. benutzt.
💡Auch interessant:
MySQL Relationale Datenbanksoftware |
SQL Tutorial |
Apache Cassandra noSQL BDD |
SQL Joins |
SQL Count Tutorial |
Wie verwendet man die Abfrage INSERT INTO SQL?
INSERT INTO SQL kann verwendet werden, um eine oder mehrere Zeilen in deine Tabelle einzufügen. Es ist aber auch möglich, diesen Befehl in komplexeren Abfragen zu verwenden. In diesem Artikel stellen wir dir verschiedene Anwendungsfälle vor.
Eine Zeile einfügen
Hierfür stehen dir zwei Möglichkeiten zur Verfügung.
1º Es ist möglich, eine Zeile einzufügen und dabei alle Spalten anzugeben. In diesem Fall lautet die Syntax wie folgt:
INSERT INTO table VALUES (‚Wert 1‘, ‚Wert 2‘, …)
Wenn du diese Option wählst, achte darauf, dass du die Reihenfolge der Spalten einhältst. Das Datenbankverwaltungssystem interpretiert die SQL-Abfragen entsprechend der Informationen, die du ihm gibst. Wenn du also keine neuen Werte für bestimmte Spalten speichern willst, musst du „NULL“ angeben (anstelle von Wert 1, 2, …).
Der Vorteil ist, dass du nicht den Namen jeder Grenze schreiben musst. Dies schränkt Tippfehler stark ein.
2º Du kannst nur die Spalten angeben, für die du neue Daten integrieren willst. Dazu musst du die folgende Syntax verwenden:
INSERT INTO table (spaltenname_1, spaltenname_2, …)
VALUES (‚Wert 1‘, ‚Wert 2‘, …)
Hier ist die Reihenfolge der Spalten nicht mehr so wichtig. Achte jedoch auf die Reihenfolge der Werte. Die Werte müssen mit den Spalten übereinstimmen, denen sie zugewiesen sind.
Mehrere Zeilen einfügen
Das Einfügen mehrerer Zeilen ist oft notwendig, um deine Tabelle zu erweitern.
Um das besser zu verstehen, zeigen wir dir das konkrete Beispiel einer Kundendatei, der du die Kontaktdaten mehrerer Kunden hinzufügen möchtest.
Hier ist die Abfrage:
INSERT INTO Kunde (Vorname, Nachname, Ort, E-Mail).
VALUES
(‚Justine‘, ‚Martin‘, ‚Paris‘, ‚justinemartin@gmail.com‘ ),
(‚Thomas‘, ‚Durant‘, ‚Bordeaux‘, ‚tomtom@sfr.fr‘),
(‚Marie‘, ‚Leroy‘, ‚Angers‘, ‚marieleroy@laposte.net‘),
(‚Vanessa‘, ‚Savary‘, ‚Marseille‘, ‚vanessa13@gmail.com‘)
Mit dem Befehl INSERT INTO SQL kannst du die folgenden Daten in deine Tabelle einfügen.
Vorname | Name | Stadt | |
---|---|---|---|
Justin | Martin | Paris | justinemartin@gmail.com |
Thomas | Durant | Bordeaux | tomtom@sfr.fr |
Marie | Leroy | Angers | marieleroy@laposte.net |
Vanessa | Savary | Marseille | vanessa13@gmail.com |
Daten aus einer anderen Tabelle kopieren
Wenn du mehrere Abfragen kombinierst, kannst du auch Daten aus Array A in ein Array kopieren.
Dazu musst du die folgende Syntax verwenden:
INSERT INTO ma_table_1 SELECT column_1,column_2,column_2 FROM ma_table_2 WHERE conditions.
Nehmen wir ein Beispiel:
Du hast zwei Tabellen. Die erste entspricht einer „Kunden“-Datei:
Vorname | Nachname | Stadt | |
---|---|---|---|
Justin | Martin | Paris | justinemartin@gmail.com |
Thomas | Durant | Bordeaux | tomtom@sfr.fr |
Marie | Leroy | Angers | marieleroy@laposte.net |
Vanessa | Savary | Marseille | vanessa13@gmail.com |
Und eine zweite Sales-Tabelle:
ID | Vorname | Nachname | Stadt | |
---|---|---|---|---|
1 | Jean | Bernad | Valenciennes | jbernard@gmail.com |
2 | Thomas | Castaing | Nantes | thomas.castaing@orange.fr |
3 | Antoine | Dupond | Paris | Antwan@laposte.net |
4 | Virginie | Pavard | Lyon | V.pavard@gmail.com |
Nachdem du einen Interessenten (Jean Bernard) konvertiert hast, möchtest du ihn in deine Kundendatei übertragen.
Hier ist die Abfrage:
INSERT INTO Kunde SELECT (Vorname, Nachname, Stadt, E-Mail) FROM prospect WHERE id = 1.
Und das Ergebnis:
Vorname | Nachname | Stadt | |
---|---|---|---|
Justin | Martin | Paris | justinemartin@gmail.com |
Thomas | Durant | Bordeaux | tomtom@sfr.fr |
Marie | Leroy | Angers | marieleroy@laposte.net |
Vanessa | Savary | Marseille | vanessa13@gmail.com |
Jean | Bernard | Valenciennes | jbernard@gmail.com |
Erweitere deine SQL-Sprachenkenntnisse mit DataScientest
Die Arbeit mit relationalen Daten besteht nicht nur darin, neue Informationen hinzuzufügen. Es ist auch möglich, Daten zu löschen, zu ändern, zu aktualisieren etc. Für all diese Aktionen gibt es eine Vielzahl von SQL-Abfragen.
Wenn du sie alle kennenlernen möchtest, ist eine Datenschulung mehr als notwendig. Genau aus diesem Grund haben wir DataScientest entwickelt. Wir bieten dir verschiedene berufsorientierte Schulungen an, um dir zu helfen, deine Fähigkeiten zu erweitern.