MySQL VALUES Schlüsselwort
Das Schlüsselwort `VALUES` wird in MySQL verwendet, um die Daten anzugeben, die bei einer `INSERT`-Operation in eine Tabelle eingefügt werden sollen. Sie definiert die literalen Werte, die für jede Spalte der Tabelle eingefügt werden sollen.
Verwendung
Das Schlüsselwort `VALUES` wird in Verbindung mit `INSERT INTO` verwendet, um neue Datenzeilen in eine Tabelle einzufügen. Es folgt eine Liste von Werten, die mit den in der "INSERT INTO"-Klausel angegebenen Spalten übereinstimmen.
sql
INSERT INTO table_name (column1, column2, ...)
VALUES (value1, value2, ...);
In dieser Syntax gibt `VALUES (value1, value2, ...)` die Daten an, die in die jeweiligen Spalten der Tabelle eingefügt werden sollen. VALUES" kann nur mit "INSERT"-Operationen und nicht mit "UPDATE" oder anderen Operationen verwendet werden.
Beispiele
1. Basic Insert
sql
INSERT INTO students (name, age)
VALUES ('John Doe', 21);
In diesem Beispiel wird eine neue Zeile in die Tabelle "Schüler" eingefügt, wobei "Name" auf "John Doe" und "Alter" auf 21 gesetzt wird.
2. Mehrere Zeilen einfügen
sql
INSERT INTO products (product_name, price)
VALUES ('Laptop', 899.99), ('Smartphone', 599.99);
Hier werden zwei neue Zeilen in die Tabelle "Produkte" eingefügt, jeweils mit bestimmten Werten für "Produktname" und "Preis".
3. Einfügen mit SELECT
sql
INSERT INTO archive_table (column1, column2)
SELECT column1, column2
FROM main_table
WHERE condition;
Die Daten werden auf der Grundlage einer SELECT-Anweisung in die Archivtabelle eingefügt, was unter bestimmten Bedingungen eine Massenübertragung von Daten ermöglicht. Im Gegensatz zu `INSERT ... VALUES`, verwendet diese Operation nicht das Schlüsselwort `VALUES`.
Tipps und bewährte Praktiken
- Stelle sicher, dass die Reihenfolge der Werte mit den Spalten übereinstimmt. Die Werte müssen mit der Reihenfolge der Spalten übereinstimmen, die in der Anweisung "INSERT INTO" angegeben ist.
- Verwende einfache Anführungszeichen für Strings. Schließe String-Literale in einfache Anführungszeichen ein, um Syntaxfehler zu vermeiden.
- Datentypen validieren. Stelle sicher, dass die Werte mit den Datentypen übereinstimmen, die in den Spalten der Tabelle erwartet werden.
- Erwäge die Verwendung von `INSERT IGNORE` oder `REPLACE`. Diese können Duplikate oder Konflikte auf der Basis von Primärschlüsseln oder eindeutigen Indizes behandeln.
- Sichere deine Eingaben. Verwende parametrisierte Abfragen oder vorbereitete Anweisungen, um SQL-Injection-Angriffe zu verhindern.
- Behandle Fehler und Ausnahmen. Achte auf mögliche Fehler wie Verstöße gegen Doppelschlüssel oder Fremdschlüssel-Beschränkungen.