Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySql-Trigger zum Löschen untergeordneter Datensätze in derselben Tabelle

Anscheinend ist dies nicht möglich :

Einige andere Optionen, über die Sie nachdenken könnten:

  1. Schreiben Sie eine Anwendungslogik, die die übergeordneten und untergeordneten Zeilen löscht, und rufen Sie diese Anwendungslogik auf, wenn Sie einen übergeordneten Datensatz löschen möchten, anstatt ihn direkt zu löschen.
  2. Kaskadieren Sie die Löschbeziehung auf derselben Tabelle, die erscheint möglich sein .
  3. Ein Bereinigungsprozess, der verwaiste untergeordnete Datensätze routinemäßig löscht.
  4. (vorgeschlagen von @Chris) Trennen Sie die untergeordneten Datensätze von den übergeordneten Datensätzen, indem Sie eine weitere Tabelle hinzufügen.