Direkt zum Inhalt
Urkunden
FunktionenAusdrückeSchlüsselwörterAussagenKlauseln

MySQL INSERT-Anweisung

Die Anweisung `INSERT` in MySQL wird verwendet, um neue Datenzeilen in eine Tabelle einzufügen. Sie ist wichtig, um Tabellen mit ersten Daten zu füllen oder neue Datensätze hinzuzufügen.

Verwendung

Die Anweisung `INSERT` wird verwendet, wenn du neue Daten in eine Tabelle einfügen willst. Er kann einzelne oder mehrere Zeilen auf einmal einfügen, indem er die Werte für jede Spalte angibt.

INSERT INTO table_name (column1, column2, ...)
VALUES (value1, value2, ...);

In dieser Syntax definiert `INSERT INTO` die Zieltabelle und die Spalten, während `VALUES` die einzufügenden Daten angibt. Zusätzlich wird die Funktion "EINFÜGEN ... SET`-Syntax kann verwendet werden, um Spalten-Werte-Paare direkt anzugeben:

INSERT INTO table_name SET column1 = value1, column2 = value2;

Beispiele

1. Basic Insert

INSERT INTO products (product_name, price)
VALUES ('Laptop', 999.99);

Dieses Beispiel fügt eine einzelne Zeile in die Tabelle "Produkte" mit Werten für "Produktname" und "Preis" ein.

2. Mehrere Zeilen einfügen

INSERT INTO employees (first_name, last_name, position)
VALUES 
  ('John', 'Doe', 'Manager'),
  ('Jane', 'Smith', 'Developer');

Diese Syntax zeigt, wie man mehrere Zeilen in die Tabelle "Mitarbeiter" in einer einzigen Anweisung einfügt, um die Effizienz zu erhöhen.

3. Einfügen mit SELECT

INSERT INTO archived_orders (order_id, customer_id, order_date)
SELECT order_id, customer_id, order_date
FROM orders
WHERE order_date < '2022-01-01';

In diesem Beispiel werden Daten aus der Tabelle `Bestellungen` für Datensätze mit einem Bestelldatum vor 2022 in die Tabelle `archived_orders` kopiert, was für Aufgaben wie Datenarchivierung oder Migration nützlich ist.

4. Einfügen mit Ignorieren und Duplikatschlüssel-Aktualisierung

INSERT IGNORE INTO users (user_id, username)
VALUES (1, 'johndoe');

Diese Anweisung versucht, eine Zeile einzufügen und ignoriert sie, wenn sie auf einen doppelten Schlüssel trifft.

INSERT INTO users (user_id, username)
VALUES (1, 'johndoe')
ON DUPLICATE KEY UPDATE username = 'john_updated';

Dieses Beispiel aktualisiert den `Benutzernamen`, wenn ein Duplikatschlüssel existiert.

Tipps und bewährte Praktiken

  • Gib die Spaltennamen an. Gib immer Spaltennamen an, um sicherzustellen, dass die Daten in die richtigen Spalten eingefügt werden, damit die Übersichtlichkeit gewahrt bleibt und Fehler vermieden werden.
  • Verwende Transaktionen. Für Masseneinfügungen oder kritische Daten solltest du Transaktionen verwenden, um die Datenintegrität zu gewährleisten.
  • Prüfe auf Duplikate. Verwende `INSERT IGNORE` oder `ON DUPLICATE KEY UPDATE`, um potenzielle doppelte Einträge elegant zu behandeln.
  • Datentypen validieren. Vergewissere dich, dass die eingefügten Werte den im Schema der Tabelle definierten Datentypen entsprechen.
  • Ordnungsgemäße Indizierung. Erwäge eine angemessene Indizierung, um die Leistung zu verbessern, besonders wenn du häufig große Datenmengen einfügst.
  • Behandle NULL-Werte. Achte bei Einfügevorgängen auf NULL-Werte und ihre Auswirkungen und stelle sicher, dass Spalten mit NOT NULL-Beschränkungen angemessen behandelt werden.

SQL Upskilling für Einsteiger

Erwerbe die SQL-Kenntnisse, um mit deinen Daten zu interagieren und sie abzufragen.
Kostenloses Lernen beginnen