Problem trigger suppression

Fermé
devMan Messages postés 74 Date d'inscription jeudi 10 décembre 2009 Statut Membre Dernière intervention 16 septembre 2010 - 25 févr. 2010 à 14:52
devMan Messages postés 74 Date d'inscription jeudi 10 décembre 2009 Statut Membre Dernière intervention 16 septembre 2010 - 25 févr. 2010 à 17:15
Bonjour,
Salut,
j'ai un trigger qui se chargera de supprimer les clefs etranger de l'élément supprimé.
DROP TRIGGER IF EXISTS `suppression`//
CREATE TRIGGER `suppression` BEFORE DELETE ON TABLE1
 FOR EACH ROW BEGIN
    delete from TABLE2  where ID=OLD.id and type=OLD.type;
    delete from TABLE3  where ID=OLD.id and type=OLD.type;
    delete from TABLE4 where ID=OLD.id and type=OLD.type;  
END//


mais j'ai un erreur :
you have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '//
CREATE TRIGGER `suppressionEavElement` BEFORE DELETE ON eltElementBase
FOR' at line 1 


je ne peux pas utiliser la suppression en cascade

quelqu'un peut me dire pourquoi svp

merci de votre aide
A voir également:

2 réponses

devMan Messages postés 74 Date d'inscription jeudi 10 décembre 2009 Statut Membre Dernière intervention 16 septembre 2010 15
25 févr. 2010 à 15:58
Re,
j'ai essayé avec :
DROP TRIGGER IF EXISTS `suppression`
delimiter //
CREATE TRIGGER `suppression` BEFORE DELETE ON TABLE1
 FOR EACH ROW BEGIN
    DELETE FROM TABLE2  WHERE ID=OLD.id AND type=OLD.type;
    DELETE FROM TABLE3  WHERE ID=OLD.id AND type=OLD.type;
    DELETE FROM TABLE4 WHERE ID=OLD.id AND type=OLD.type;  
END//
delimiter ;

mais j'ai un erreur :
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'delimiter' at line 1 
0
devMan Messages postés 74 Date d'inscription jeudi 10 décembre 2009 Statut Membre Dernière intervention 16 septembre 2010 15
25 févr. 2010 à 17:15
Re,

en fait,
il me semble que le problem n'existe pas ds la syntaxe de ma requette...
le problem c'est ds l'onglet SQL de phpMyAdmin, ds la zone text Délimiteur j'ai mis un ";" par contre je dois mettre "//"
donc ma requette elle est bonne
DROP TRIGGER IF EXISTS `suppression`//
CREATE TRIGGER `suppression` BEFORE DELETE ON TABLE1
 FOR EACH ROW BEGIN
    delete from TABLE2  where ID=OLD.id and type=OLD.type;
    delete from TABLE3  where ID=OLD.id and type=OLD.type;
    delete from TABLE4 where ID=OLD.id and type=OLD.type;  
END//


Bon dev
0