Vì vậy, tại đây bạn có thể tìm thấy một cách thông qua MYSQL TRIGGER
.
Bảng mẫu:
DROP TABLE IF EXISTS `constantvaluetable`;
CREATE TABLE `constantvaluetable` (
`ID` int(11) NOT NULL AUTO_INCREMENT,
`constValue` int(11) NOT NULL,
PRIMARY KEY (`ID`)
) ENGINE=InnoDB;
Kích hoạt:
DROP TRIGGER IF EXISTS trigger_const_check;
delimiter //
CREATE TRIGGER trigger_const_check BEFORE INSERT ON constantvaluetable
FOR EACH ROW
BEGIN
IF NEW.constValue <> 71 THEN
SIGNAL SQLSTATE '45000' SET message_text ='Only allowed value is 71';
END IF;
END //
delimiter ;
Kiểm tra:
INSERT INTO constantvaluetable(constValue) VALUES(71);
INSERT INTO constantvaluetable(constValue) VALUES(66);
Kết quả:
Câu lệnh chèn đầu tiên sẽ thành công.
Câu lệnh chèn thứ hai sẽ không thành công. Và thông báo lỗi sau sẽ được hiển thị:
Lưu ý: Giả sử CONSTANT của bạn giá trị là 71
.