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

Wie lösche ich rekursiv Elemente aus der Tabelle?

Mit diesem Modell ist es unmöglich

  1. Anstelle von root verwenden Sie NULL , damit Sie InnoDB Foreign Key + Cascade Delete verwenden können.
  2. Anstatt die Zeichenfolge parent_key zu verwenden, verwenden Sie die ID (z. B. Sonne =1, Mond =2)

Eine andere Möglichkeit besteht darin, das Datenmodell zu ändern, sodass Sie problemlos beliebige Nachkommen des Elements auswählen können - siehe zum Beispiel http://www.sitepoint.com/hierarchical-data-database-2/