mysql 意外的 END_OF_INPUT,期待 IF

标签 mysql procedure

我在程序结束时遇到问题,它在关键字“END”的末尾表示语法错误,意外的 END_OF_INPUT,期待 IF - 最后一行。我看不出出了什么问题,有人知道问题出在哪里

    DELIMITER $$

CREATE PROCEDURE `leapfrog`.`new_procedure` ()
BEGIN
    IF new_parent_rgt < origin_lft THEN
        BEGIN
        END;
    ELSE IF (new_parent_rgt > origin_rgt) THEN
        BEGIN 
        END;
    ELSE
        BEGIN
        END;
    END IF;
END -- error here 'syntax error, unexpected END_OF_INPUT, expecting IF

最佳答案

你错过了;在 END IF 末尾

而且,您使用了错误的 elseif:

CREATE PROCEDURE `leapfrog`.`new_procedure` ()
BEGIN
    IF new_parent_rgt < origin_lft THEN
        BEGIN
        END;
    ELSEIF (new_parent_rgt > origin_rgt) THEN
        BEGIN 
        END;
    ELSE
        BEGIN
        END;
    END IF;
END

应该没问题:)

关于mysql 意外的 END_OF_INPUT,期待 IF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17922107/

相关文章:

php - 使用 mysqlnd 在 PHP 5.5 上正确检测高于 5 的 mysql

php - 使用 PHP 从 MYSQL 获取错误值

php - MySQL日期格式%c不返回结果?

hadoop - 如何中止/回滚 HBase 待处理程序?

sql - 如何在 oracle sql 脚本中创建过程并在脚本中使用它?

php - 如何统计项目数量

php - HandlerSocket 给出错误 167 - 这是什么意思?

mysql - 为什么 MySQL 程序在遇到错误时停止执行?我该如何让它继续下去?

mysql - MySQL如何将所有NEW/OLD触发器数据放入临时表并在程序中使用?

VHDL 程序