好的,我有一个简单的php聊天应用程序可以正常工作并将消息保存到mySQL表中。 但随着时间表变得越来越大,所以我想在每个INSERT上添加一个触发器来清理表。问题是我在phpMyAdmin中从GUI创建触发器,查询本身有效但触发器不存在,当触发器出现时,消息也不会保存到数据库中。
这是我试图开始工作的触发器:
DROP TRIGGER IF EXISTS `ClearChat`;
CREATE DEFINER=`root`@`localhost`
TRIGGER `ClearChat` AFTER INSERT ON `chat`
FOR EACH ROW DELETE FROM `chat` WHERE msg_id NOT IN (
SELECT `msg_id` FROM (
SELECT `msg_id` FROM `chat`
ORDER BY `msg_id` DESC
LIMIT 5
)sub ORDER BY `msg_id` ASC )
当我将它运行到SQL语句
时,DELETE FROM等的查询工作正常