Mysql
 sql >> база данни >  >> RDS >> Mysql

Използвайте тригер, за да спрете вмъкване или актуализиране

Опитайте синтаксиса 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

РЕДАКТИРАНЕ

Актуализирано въз основа на популярен коментар по-долу от Бил Карвин.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Алтернатива на използването на ключова дума LIMIT в подзаявка в MYSQL

  2. избиране на уникални стойности от колона

  3. Не можете да посочите целева таблица за актуализиране в клаузата FROM

  4. Мигриране на MySQL към PostgreSQL на AWS RDS, част 3

  5. Какво е MySQL:Общ преглед