2.3 Daten löschen

Mit der DELETE-Anweisung können Datensätze gelöscht werden.

Beispiel

Der Mietvertrag mit der ID 2 soll gelöscht werden.

  • Tabelle Mietvertrag

    ID Abschlussdatum Mietbeginn Mietdauer ↑Kunde_ID
    1 2015-08-11 2015-08-20 3 1
    2 2015-08-13 2015-08-22 5 2
  • Tabelle Mietvertrag_vermietet_Fahrrad

    Mietvertrag_ID Fahrrad_ID
    1 1
    1 2
    2 2
Abb. 2-18: Die Datenbanktabellen Mietvertrag und Mietvertrag_vermietet_Fahrrad vor dem Löschvorgang.

Bevor in der Tabelle Mietvertrag der Datensatz mit der ID 2 gelöscht werden darf, müssen zunächst alle Datensätze gelöscht werden, die auf diesen verweisen.

In unserem Beispiel muss daher zunächst in der Tabelle Mietvertrag_vermietet_Fahrrad jeder Datensatz, der in der Spalte Mietvertrag_ID den Wert 2 hat, gelöscht werden. Erst danach darf in der Tabelle Mietvertrag der Datensatz mit der ID 2 gelöscht werden.

SQL
DELETE FROM Mietvertrag_vermietet_Fahrrad
WHERE Mietvertrag_ID = 2;
Abb. 2-19: In der Tabelle Mietvertrag_vermietet_Fahrrad wird jeder Datensatz gelöscht, der in der Spalte Mietvertrag_ID den Wert 2 hat.
SQL
DELETE FROM Mietvertrag
WHERE ID = 2;
Abb. 2-20: Der Datensatz mit der ID 2 wird aus der Tabelle Mietvertrag gelöscht.
  • Tabelle Mietvertrag

    ID Abschlussdatum Mietbeginn Mietdauer ↑Kunde_ID
    1 2015-08-11 2015-08-20 3 1
  • Tabelle Mietvertrag_vermietet_Fahrrad

    Mietvertrag_ID Fahrrad_ID
    1 1
    1 2
Abb. 2-21: Die Datenbanktabellen Mietvertrag und Mietvertrag_vermietet_Fahrrad nach dem Löschvorgang.
SQL
DELETE FROM tabelle
[WHERE bedingung];
Abb. 2-22: SQL Syntax – DELETE
Merke: Einfügen von Datensätzen (Zeilen) in eine Tabelle