# Einträge in einer relationalen DB (MySQL) löschen?



## lupoli (21. Januar 2004)

Hallo zusammen,
angenommen ich habe in einer Datenbank unter MySQL drei Tabellen, welche eine Relation zu einander haben (siehe Bildanhang), und ich möchte nun in der Tabelle Nr. 1 (tbl_Tabelle1) einen Eintrag löschen (z.B. der mit der ID=10), gibt es dann die Möglichkeit, auch gleich alle Einträge in den anderen Tabellen, welche von diesem Eintrag abhängig sind,  mit einem SQL-Befehl zu löschen, oder muss ich da (so wie ich's bis jetzt gemacht habe) das ganze unterteilen?
Ich hoffe ihr versteht, was ich meine.
Vielleicht beschreibe ich der Verständnis wegen noch kurz, wie ich bis jetzt vorgegangen bin:

Wenn es z.B. galt in der Tabelle 1 den Eintrag mit der ID = 10 zu löschen, so vollzog ich folgende Schritte:

1. In der Tabelle 1 Eintrag löschen, bei welchem ID = 10 ist
2. Distinct Abfrage der IDs aller Einträge in Tabelle 2, welche als  ID_Tabelle1 den Wert 10 haben.
3. Ich lösche alle Einträge in Tabelle3, welche als ID_Tabelle2 die erhaltenen IDs aus Schritt 2 beinhalten.
4. Ich lösche alle Einträg ein Tabelle2, welche als ID_Tabelle1 den Wert 10 haben.

Mittels Join etc. kann man ja Abfragen mit einem Befehl über alle Tabellen machen, gibts nun so etwas auch für zum Löschen?
Besten Dank für Eure Hilfe!
 mfg
   lupoli


----------

