sql >> Database teknologi >  >> RDS >> Mysql

Brug en trigger til at stoppe en indsættelse eller opdatering

Prøv SIGNAL-syntaksen - https://dev.mysql.com/ doc/refman/5.5/da/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

REDIGER

Opdateret baseret på populær kommentar nedenfor af Bill Karwin.



  1. Tips og tricks til at navigere i PostgreSQL-fællesskabet

  2. SQL-forespørgsel for at vise nærmeste dato?

  3. The Performance Tuning Maze

  4. Erlang og dets forbrug af Heap Memory