Je n'ai pas de db en ce moment pour tester ce que je dis, mais here's a reference to the mysql docs où votre cas est pris comme exemple:
Vous pouvez spécifier plusieurs tables dans une instruction DELETE pour supprimer des lignes d'une ou de plusieurs tables en fonction de la condition particulière de la clause WHERE.
Et aussi:
1) Pour la première syntaxe plusieurs tables, les lignes correspondant uniquement dans les tables énumérées avant la clause FROM sont supprimés.
2) Pour la deuxième syntaxe de tables multiples, seules les lignes correspondantes des tables répertoriées dans la clause FROM (avant la clause USING) sont supprimées.
L'effet est que vous pouvez supprimer des lignes de plusieurs tables en même temps et ont des tables supplémentaires qui sont utilisés uniquement pour la recherche:
1)
DELETE t1, t2
FROM t1 INNER JOIN t2 INNER JOIN t3
WHERE t1.id=t2.id AND t2.id=t3.id;
2)
DELETE FROM t1, t2
USING t1 INNER JOIN t2 INNER JOIN t3
WHERE t1.id=t2.id AND t2.id=t3.id;
Ces énoncés comprennent les trois tables lorsque vous recherchez des lignes à supprimer , mais supprimez les lignes correspondantes uniquement à partir des tables t1 et t2.
Quelle erreur obtenez-vous? –