Существует передача параметров в trigger?
у меня есть две таблицы, одна с сеансами и другой деятельности. В таблице деятельности у меня есть два поля, доступно и vendível и в течение сеанса я парковочных мест.
Хотел бы получить идентификатор сеанса, а надо сделать update в поле vendível, когда zerasse вакансии, что поле деятельности.vendível сделать update 0.
DELIMITER $$
CREATE TRIGGER atualizarStatus
AFTER UPDATE ON sessao
FOR EACH ROW
BEGIN
IF (sessao.vagas = 0) THEN
UPDATE atividade SET vendivel = 0 WHERE id = $id;
END IF;
END;
5
1 answers
Их попытки были очень близки к достижению этой цели. Попробуйте так:
DELIMITER $$
CREATE TRIGGER atualizarStatus
AFTER UPDATE ON sessao
FOR EACH ROW
BEGIN
IF NEW.vagas = 0 THEN
UPDATE atividade SET vendivel = 0 WHERE id = NEW.id;
END IF;
END;
И В trigger, зарезервированные слова NEW и OLD позволяют добраться до столбцов с записей которые были затронуты в инструкции, что ча сти диа ло trigger. В этом случае вы можете использовать NEW для перехода в состояние записи после ОБНОВЛЕНИЯ.
1
Author: bruno, 2015-07-23 20:18:04