Как создать триггер с несколькими действиями в MySQL 5.0.45?

0

Я работаю в phpMyAdmin, и я новичок в создании триггеров MySQL 5.0.45. Я пытаюсь создать триггер, который поможет мне проверять данные, вызывая ошибку, когда значение выходит за пределы диапазона.

Это прекрасно работает:

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;

Но мне нужно добавить дополнительные действия для этого триггера. Я устал от этого:

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;

но он вернул эту ошибку "# 1235 - Эта версия MySQL еще не поддерживает" несколько триггеров с тем же временем действия и событием для одной таблицы "

Кто-нибудь знает, как я могу добавить несколько действий к триггеру? (Несколько операторов if-then? Мне в итоге нужно добавить около 20.)

Спасибо!

Теги:
triggers
mysql-error-1235

1 ответ

2
Лучший ответ

Вам нужно отбросить существующий триггер перед созданием нового:

DROP TRIGGER IF EXISTS t1;
CREATE TRIGGER t1
...
  • 0
    Айк был прав здесь. У меня случайно был еще один триггер на этом столе. Однажды я удалил это. , , Я мог бы создать свой t1 здесь без проблем.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню