2010-08-25 5 views
0

Je travaille dans phpMyAdmin et je suis nouveau à la création de déclencheurs MySQL 5.0.45. J'essaye de créer un déclencheur qui m'aidera à valider des données en envoyant une erreur quand une valeur est hors de portée.Comment créer un déclencheur avec plusieurs actions dans MySQL 5.0.45?

Cela fonctionne très bien:

create trigger t1 
before insert 
on hvi 
for each row 
    begin 
    declare dummy int; 
    if new.`Moist (dry%)` <1 then 
    select `Moist(dry%) cannot be less than 1` 
    into dummy 
    from hvi 
    where id = new.`Moist (dry%)`; 
    end if; 
end; 

Mais je dois ajouter des actions à ce déclencheur. Je fatigué ceci:

create trigger t1 
before insert 
on hvi 
for each row 
    begin 
    declare dummy int; 
    if new.`Moist (dry%)` <1 then 
    select `Moist(dry%) cannot be less than 1` 
    into dummy 
    from hvi 
    where id = new.`Moist (dry%)`; 
    end if; 
    if new.`Moist (dry%)` >50 then 
    select `Moist(dry%) cannot be greater than 50` 
    into dummy 
    from hvi 
    where id = new.`Moist (dry%)`; 
    end if; 
end; 

mais il est retourné cette erreur « # 1235 - Cette version de MySQL ne supporte pas encore « plusieurs déclencheurs avec la même action du temps et événement pour une table » »

Est-ce que quelqu'un savoir comment je peux ajouter plusieurs actions à un déclencheur? (Plusieurs instructions si-alors? Je devrai éventuellement ajouter environ 20.)

Merci!

Répondre

2

Vous devez déposer votre déclencheur existant avant de créer la nouvelle:

DROP TRIGGER IF EXISTS t1; 
CREATE TRIGGER t1 
... 
+0

Ike était correcte ici. J'ai accidentellement eu un autre déclencheur sur cette table. Une fois je l'ai supprimé. . . Je pourrais créer mon t1 ici sans problème. – kmcamara

Questions connexes