mysql - mysql 中的事件调度程序

标签 mysql

Create EVENT event_test_name ON SCHEDULE EVERY 1 MINUTE STARTS '2010-09-02 12:10:15' ON COMPLETION NOT PRESERVE ENABLE 
DO 
SET Total=-1;
SET Total = (SELECT COUNT(0) FROM schema1.table1);
SELECT Total;
 IF Total >50000 THEN
insert into schema2.table1 (column1) 
select schema1.table1.column1 from schema1.table1;
end if;

这是我为 mysql 编写的事件调度程序,但我在 if statemnet 附近不断收到错误的语法行,任何帮助都会非常有帮助。

谢谢。

最佳答案

你必须在你的变量前面加上@,否则MySQL会假设它们是系统变量(Total不是其中之一)或表中的列名,所以...

...
SET @Total=-1;
SET @Total = (SELECT ...);
SELECT @Total;
IF @Total > ...

等等。

关于mysql - mysql 中的事件调度程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3632249/

相关文章:

MySQL根据出生日期计算年龄

sql - 在单个 SQL 语句中使用多个 COUNT 和 SUM

php - 如何防止从 PHP 到 MYSQL 的多次插入重复条目

mysql - MySQL 查询从 3 个表中接收随机组合有点麻烦

Mysql 两个查询都使用 "Using where & Using temporary",但速度有差异

mysql - 在 mysql < 5.6.4 中搜索单词,而不是短语

PHP更新数据库数据

php - 多个blob文件插入php

php - foreach 循环跳过 3 个项目中的前 2 个

mysql - ssh端口从R转发到mysql