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

MySQL:Không thể sử dụng SIGNAL trong Trigger

set message_text mệnh đề là một phần của cú pháp tín hiệu - không được có dấu chấm phẩy (; ) giữa chúng. Ngoài ra, nó sử dụng = toán tử, không phải := :

DELIMITER $$
CREATE TRIGGER `test_before_insert` BEFORE INSERT ON `Initial_Fees`
FOR EACH ROW
BEGIN
    IF ((SELECT Activation from Portfolio WHERE idPortfolio = New.idPortfolio)=false) THEN
        SIGNAL SQLSTATE '45000' -- Note: no semicolon
        SET MESSAGE_TEXT = 'Disabled Thing'; -- Note the = operator
    END IF;
END$$   
DELIMITER ; 


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Khi nào thì thêm chỉ mục nào vào bảng trong Rails

  2. Cách làm cho MySQL xử lý UTF-8 đúng cách

  3. Phạm vi số nguyên SQL khi tạo bảng

  4. Ánh xạ JPA:QuerySyntaxException:foobar không được ánh xạ ...

  5. Kiểm soát phiên bản cơ sở dữ liệu cho MySQL