溫馨提示×

MySQL SIGNAL與TRIGGER聯用的示例

小樊
91
2024-07-19 10:46:39
欄目: 云計算

在MySQL中,可以使用SIGNAL語句和TRIGGER語句聯合使用來實現在特定條件下觸發信號的功能。

假設有一個名為students的表,其中包含學生的姓名和成績字段?,F在我們希望在插入或更新學生記錄時,如果成績小于60分,則觸發一個信號,提示用戶輸入的成績不合法。

首先創建一個TRIGGER,當插入或更新記錄時,檢查成績是否小于60分:

DELIMITER //
CREATE TRIGGER check_grade
BEFORE INSERT ON students
FOR EACH ROW
BEGIN
    IF NEW.grade < 60 THEN
        SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'Grade must be greater than or equal to 60';
    END IF;
END;
//
DELIMITER ;

然后插入一條學生記錄,成績小于60分,觸發信號:

INSERT INTO students (name, grade) VALUES ('Alice', 55);

執行上述插入語句后,會觸發信號,并顯示提示信息"Grade must be greater than or equal to 60"。這樣就通過SIGNAL和TRIGGER聯合使用實現了在特定條件下觸發信號的功能。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女