Cố gắng hạn chế việc thêm bản ghi mới vào bảng. Phát sinh lỗi khi một bản ghi mới sắp được thêm vào.
DELIMITER $$
CREATE TRIGGER trigger1
BEFORE INSERT
ON table1
FOR EACH ROW
BEGIN
SELECT COUNT(*) INTO @cnt FROM table1;
IF @cnt >= 25 THEN
CALL sth(); -- raise an error
END IF;
END
$$
DELIMITER ;
Lưu ý, thao tác COUNT có thể chậm trên các bảng InnoDb lớn.
Trên MySQL 5.5, bạn có thể sử dụng SIGNAL // RESIGNAL tuyên bố để đưa ra lỗi.