Wie verwende ich die Löschkaskade in MySQL MyISAM Storage Engine?

8

Ich habe eine Tabelle, die ich Ausrüstung genannt habe, und acht andere Tabellen, die ich equipment_child1 genannt habe, und so weiter, bis equipment_child8 / p>

Das gemeinsame Feld zwischen allen Tabellen ist cod_equip . Mit diesem Feld kann ich alle untergeordneten Geräte -Tabellen mit Ausrüstung identifizieren Elterntabelle.

Ich muss löschen Daten von Ausrüstung wenn die Ausrüstung verschoben wird, aber ich muss Daten in allen meinen Tabellen equipment_child1 to equipment_child8 löschen .

dann habe ich mich erinnert, ich hatte DELETE CASCADE in innoDB engine verwendet, aber jetzt benutze ich MyISAM engine, ist das ein problem?

Jede Hilfe, wird wirklich klären ...

    
B4NZ41 17.03.2011, 17:29
quelle

1 Antwort

14

Ja. Einfach kann man nicht mit dieser Engine.

bearbeiten. Sie könnten einen Trigger schreiben, der nach dem Löschen eines Datensatzes in Ihrer Tabelle alle untergeordneten Datensätze in allen anderen Tabellen löscht.

Ok. Ich habe dir ein Beispiel geschrieben:

%Vor%

Ich hoffe, dass es hilft.

bearbeiten. Offensichtlich funktioniert es auch, wenn Sie gleichzeitig mehrere IDs aus table1 löschen:

%Vor%     
Nicola Cossu 17.03.2011, 17:31
quelle

Tags und Links