-
delete cascade quand?
Bonjour j'ai une table avec
materiel
id_materiel (clef primaire)
id_membre
id_nom (index)
et une autre
materiel_nom
id_nom (clef primaire)
designation (varchar 40)
Comment faire pour que seulement lorsque plus aucun index pointe sur une ligne de materiel_nom, cette ligne soit supprimée?
-
Tu as 2 solutions :
Soit tu le fais toi même avec une requête de plus.
Soit tu utilise le moteur de stockage InnoDB qui permet de gérer les clés étrangères.
http://dev.mysql.com/doc/refman/5.1/...nstraints.html
-
+1
Quand tu supprimes un index, tu boucles sur tous les enregistrements materiel et regarde s'il y'en encore qui ont la valeur de l'index que tu viens de supprimer.
Sinon pour la clé étrangère id_nom (index) en foreign key mais comme dit Seb33300 il te faut passer par InnoDB. Si tu as beaucoup de suppression pense au trigger.
-
Merci