【问题标题】:Using IF ELSE and LOOP inside a mySql event在 mySql 事件中使用 IF ELSE 和 LOOP
【发布时间】:2013-05-03 18:03:11
【问题描述】:

我以前从未这样做过,但是为什么我在尝试创建此事件时不断收到错误消息。我正在使用 HeidiSql 来执行此操作。另外,可以在事件中使用 LOOPS、WHILE、IF ELSE 吗?

BEGIN

DECLARE x TIMESTAMP;
DECLARE y INT;
DECLARE a VARCHAR(50); // Here's where the error is.

SET x = current_timestamp();
insert into checked (stamp) values (x);

SELECT count(stamp) INTO y FROM checked;
        IF y > 10 THEN// It also throws an error here.
            a = 'PASS';
            else
            a = 'FAIL';
        END IF;  

insert into checked (timeCount) values (a);

END

【问题讨论】:

  • 请具体说明您的问题。
  • @Daniel 我正在创建一个活动。我得到 /* SQL Error (1064): You have a error in your SQL syntax;检查与您的 MySQL 服务器版本相对应的手册,以获取在 '= 'PASS' 附近使用的正确语法;否则 a = '失败';万一;在第 17 行插入' */

标签: mysql sql events


【解决方案1】:

使用

SET  a = 'PASS'; 

而不是

a = 'PASS';

您赋予价值的每一个地方。

【讨论】:

【解决方案2】:

使用“DELIMITER”在mysql中执行整个块

比如.....

DELIMITER

//Your code 

DELIMITER;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多