bonjour,
j'ai cherché sur le forum et sur la doc mysql mais je n'arrive pas à résoudre un problème: supprimer une ligne sur plusieurs tables.

J'ai simplifié mes tables au maximum pour me faire comprendre...

Version mysql = 5.0.90-log




La 1ère requète (la plus intuitive...) à laquelle j'ai pensé était :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
DELETE FROM table1, table2, table3 WHERE id=54

Puis,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
DELETE FROM table1, table2, table3 WHERE table1.id=table2.id AND table1.id=table3.id AND table1.id=54
Et enfin,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
DELETE table1, table2, table3 FROM table1, table2, table3 WHERE table1.id=table2.id AND table1.id=table3.id AND table1.id=54
La dernière est celle qui fonctionne le mieux mais sur table3, la ligne id=54 n'est pas supprimée. (par contre, sur table1 et table2, ca fonctionne)


Bien entendu, aucune ne fonctionne sinon je ne solliciterais pas votre aide.
J'aimerais bien retenir la méthode la plus rapide pour le serveur puisqu'il s'agit de supprimer 1 ligne sur 15 tables (et non pas 3 comme dans l'exemple)...

Merci d'avance pour vos pistes.