Mik3e
Erfahrenes Mitglied
Abend zusammen!
Stehe vor folgendem Problem:
Habe ein Konstrukt aus drei Tabellen (2 "Haupt"-Tabellen, die über eine assoziative Tabelle verknüpft sind). Soweit nichts besonderes.
Nun ist es aber so, dass ich Datensätze aus der assoziativen Tabelle entfernen muss, um die Verknüpfung zu lösen. Das geht allerdings nicht so einfach, da an diesen Löschvorgang eine Bedingung einer Haupttabelle geknüpft ist.
Nun wüßte ich gerne, ob es irgendwie die Möglichkeit einer JOIN Operation auf ein Delete Statement gibt. Würde mir das ganze im Prinzip so vorstellen (nur mit zwei Tabellen zur leichteren Verständlichkeit):
pk_**** = Primary Key
fk_**** = Foreign Key
Im Anhang auch der Ausschnitt des ERDs zur leichteren Verständlichkeit.
Bilde mir ein mal gehört zu haben, dass es JOINS ausschließlich bei SELECT gibt, interessanterweise beschwert sich der MySQL Server aber nicht über die Syntax. Er löscht nur einfach nichts.
Vielleicht gibt es auch die Möglichkeit einer IF-Clause bzw. ein ähnliches derivat dazu
Danke & LG
Mike
Stehe vor folgendem Problem:
Habe ein Konstrukt aus drei Tabellen (2 "Haupt"-Tabellen, die über eine assoziative Tabelle verknüpft sind). Soweit nichts besonderes.
Nun ist es aber so, dass ich Datensätze aus der assoziativen Tabelle entfernen muss, um die Verknüpfung zu lösen. Das geht allerdings nicht so einfach, da an diesen Löschvorgang eine Bedingung einer Haupttabelle geknüpft ist.
Nun wüßte ich gerne, ob es irgendwie die Möglichkeit einer JOIN Operation auf ein Delete Statement gibt. Würde mir das ganze im Prinzip so vorstellen (nur mit zwei Tabellen zur leichteren Verständlichkeit):
PHP:
DELETE FROM
`tbl_bezahlart_join_sysuser` AS t1
LEFT JOIN `tbl_sysuser` AS t2 ON t1.`fk_sysuser_id`=t2.`pk_sysuser_id`
WHERE t1.`fk_bezahlart_id`='0815'
AND t2.`fk_veranstalter_id`='4711'
fk_**** = Foreign Key
Im Anhang auch der Ausschnitt des ERDs zur leichteren Verständlichkeit.
Bilde mir ein mal gehört zu haben, dass es JOINS ausschließlich bei SELECT gibt, interessanterweise beschwert sich der MySQL Server aber nicht über die Syntax. Er löscht nur einfach nichts.
Vielleicht gibt es auch die Möglichkeit einer IF-Clause bzw. ein ähnliches derivat dazu
Danke & LG
Mike
Anhänge
Zuletzt bearbeitet: