MaxRow 触发器在 mysql 中不起作用
MaxRow Trigger not working in mysql
我想编写一个触发器,如果插入一个新条目并且行数大于 3600 行,它会删除最旧的数据库条目。不幸的是,第 7 行有一个错误(1064),但我不知道如何修复它。如果使用 mysql.
中的 DATETIME 定义列时间
CREATE TRIGGER maxRows BEFORE INSERT ON table1
FOR EACH ROW
BEGIN
IF ((SELECT COUNT(*) FROM table1) = 3600) THEN
DELETE FROM table1
ORDER BY time ASC
LIMIT 1;
END IF;
END;
由于触发器中有一些 DML 语句,请尝试更改分隔符
DELIMITER $$
CREATE TRIGGER maxRows BEFORE INSERT ON table1
FOR EACH ROW
BEGIN
IF ((SELECT COUNT(*) FROM table1) = 3600) THEN
DELETE FROM table1
ORDER BY time ASC
LIMIT 1;
END IF;
END;
END $$
DELIMITER ;
我想编写一个触发器,如果插入一个新条目并且行数大于 3600 行,它会删除最旧的数据库条目。不幸的是,第 7 行有一个错误(1064),但我不知道如何修复它。如果使用 mysql.
中的 DATETIME 定义列时间CREATE TRIGGER maxRows BEFORE INSERT ON table1
FOR EACH ROW
BEGIN
IF ((SELECT COUNT(*) FROM table1) = 3600) THEN
DELETE FROM table1
ORDER BY time ASC
LIMIT 1;
END IF;
END;
由于触发器中有一些 DML 语句,请尝试更改分隔符
DELIMITER $$
CREATE TRIGGER maxRows BEFORE INSERT ON table1
FOR EACH ROW
BEGIN
IF ((SELECT COUNT(*) FROM table1) = 3600) THEN
DELETE FROM table1
ORDER BY time ASC
LIMIT 1;
END IF;
END;
END $$
DELIMITER ;