Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Użyj wyzwalacza, aby zatrzymać wstawianie lub aktualizację

Wypróbuj składnię SIGNAL - https://dev.mysql.com/ doc/refman/5.5/en/sygnał.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

EDYTUJ

Zaktualizowano na podstawie popularnego komentarza poniżej autorstwa Billa Karwina.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak dodać nową kolumnę do tabeli MYSQL?

  2. Jak tworzyć pliki językowe Codeigniter z bazy danych?

  3. INTERSECT w MySQL

  4. Funkcja MySQL LOG2() – Zwróć logarytm Base-2 wartości

  5. Czy możesz dodać oświadczenie if w ORDER BY?