Stefan E: MySQL: DELETE über mehrere Tabellen?

Hallo zusammen
Ich möchte gerne in einer MySQL DB über zwei miteinander verknüpfte Tabellen Einträge löschen. Doch irgendwie habe ich das Gefühl, dass dies Grundsätzlich nicht geht.

Hier mein Versuch:
[code sql]
DELETE FROM tabelle1 t1, tabelle2 t2
  WHERE t1.id=... AND t1.x=t2.x
[/code]

Was mache ich falsch oder geht es einfach nicht?

Vielen Dank für die Hilfe.

  1. Hier mein Versuch:
    [code sql]
    DELETE FROM tabelle1 t1, tabelle2 t2
      WHERE t1.id=... AND t1.x=t2.x
    [/code]

    Hallo Stefan,

    INSERT, UPDATE und DELETE können nur auf EINE Tabelle angewandt werden, soweit ich weiß.

    Grüße,

    Wolfram

  2. echo $begrüßung;

    Ich möchte gerne in einer MySQL DB über zwei miteinander verknüpfte Tabellen Einträge löschen.

    Gemäß MySQL-Handbuch Kapitel "DELETE Syntax" steht die Multiple-table syntax ab Version 4.0 zur Verfügung.

    Wenn es nicht an der Version liegt: Liefert denn eine adäquate SELECT-Abfrage die gewünschten Datensätze?

    echo "$verabschiedung $name";

    1. ich habe die Lösung dank des MySQL Referenzbuches gefunden. Kapitel "DELETE Syntax"

      [zitat] Das .*-Zeichen nach den Tabellennamen ist nur aus Gründen der Kompatibilität mit Access vorhanden:

      DELETE t1,t2 FROM t1,t2,t3 WHERE t1.id=t2.id AND t2.id=t3.id
      [/zitat]

      Also nach DELETE muss man nochmals den Tabellennamen angeben.