您好我想每隔一小时删除一次我的SQL表行。
CREATE EVENT IF NOT EXISTS `money`
ON SCHEDULE
EVERY 1 HOUR
DO
BEGIN
DELETE FROM `money` WHERE `payed` = 'processing' AND `payed2` = 'processing';
END
我收到此错误:
1064 - 您的SQL语法出错;检查与MySQL服务器版本对应的手册,以获得正确的语法 靠近''第8行
答案 0 :(得分:1)
这有帮助吗?
DELIMITER $$
CREATE EVENT IF NOT EXISTS `money`
ON SCHEDULE EVERY 1 HOUR
DO
BEGIN
DELETE FROM `money` WHERE `payed` = 'processing' AND `payed2` = 'processing';
END$$
DELIMITER ;
我无法使用不支持事件的旧服务器版本,但我希望定义它们与STORED例程类似。
答案 1 :(得分:1)
使用分号分隔符时遇到的问题。您可以更改分隔符,但只有一个语句,因此您不需要BEGIN ... END块
{{1}}
答案 2 :(得分:0)
您不需要BEGIN
和END
。只需在DO
块中写下您的查询即可。这应该有用。