Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Sử dụng trình kích hoạt để dừng chèn hoặc cập nhật

Hãy thử cú pháp 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

CHỈNH SỬA

Cập nhật dựa trên nhận xét phổ biến bên dưới của Bill Karwin.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Thiết lập MySQL InnoDB Cluster với MySQL Shell (cùng với MySQL Router)

  2. Laravel:PDOException:không thể tìm thấy trình điều khiển

  3. Loại bỏ các hàng trùng lặp trong MySQL

  4. Khóa ngoại MySQL InnoDB giữa các cơ sở dữ liệu khác nhau

  5. Tắt cảnh báo và lỗi trên PHP và MySQL