web-dev-qa-db-fra.com

Supprimer le déclencheur s'il existe dans MySQL

J'ai besoin d'exécuter une commande similaire à la suivante, pas dans une procédure, mais dans un simple fichier SQL pour mysql 5.xx

IF EXISTS (SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE TRIGGER_NAME =  'tr_fnninio_censopersona_ins') THEN
    DROP TRIGGER tr_fnninio_censopersona_ins;
END IF;
10
richardtk_1

Pourquoi pas juste

DROP TRIGGER IF EXISTS  tr_fnninio_censopersona_ins;

Documentation sur le déclencheur MySQL

43
juergen d

Vous pouvez utiliser comme ça, 

DROP TRIGGER IF EXISTS tr_fnninio_censopersona_ins;
DELIMITER $$
CREATE TRIGGER tr_fnninio_censopersona_ins
    BEFORE INSERT ON `your_table` FOR EACH ROW
    BEGIN

         SET NEW.INSERTED= NOW();

    END$$
DELIMITER ;
0
caras