Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom dia pessoal, gostaria de obter ajuda numa questão relacionada a uma Trigger.
Preciso que seja inserido um valor de data e hora após o INSERT em uma tabela.
Quando houver um INSERT na tabela turno deve ter uma Trigger fazendo um UpDate nesta mesma tabela turno inserindo a Data e Hora do servidor. Eu consegui fazer a Trigger porém ela não é executada quando o INSERT é executado.
É possível ter esta Trigger de UpDate na mesma tabela após o INSERT?
Quem puder me ajudar eu agradeço desde já!
>
DELIMITER $$
CREATE TRIGGER data_inicio AFTER INSERT ON tb_turno
FOR EACH ROW
BEGIN
UPDATE tb_turno SET tur_data_inicio = NOW();
END$$
Você está tentando atualizar uma tabela no mesmo momento em que está inserindo um registro
O mysql não deixará você fazer isso está, ou seja atualizar uma tabela que já está sendo utilizada pela rotina que chamou o trigger.
Se quiser usar o trigger faça assim
CREATE TRIGGER data_inicio
BEFORE INSERT ON tb_turno
FOR EACH ROW
SET NEW.tur_data_inicio= NOW();
Creio que basta setar a variável NEW
http://dev.mysql.com/doc/refman/5.0/en/trigger-syntax.html