Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Use um gatilho para interromper uma inserção ou atualização


Experimente a sintaxe SIGNAL - https://dev.mysql.com/ doc/refman/5.5/en/signal.html
create trigger agency_check
before insert on foo
for each row
begin
  if (new.agency < 1 or new.agency >5) then
    SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'your error message';
  end if 
end

EDITAR

Atualizado com base no comentário popular abaixo por Bill Karwin.