MySQL存储过程BEGIN / END语句抛出错误

时间:2012-12-05 01:48:37

标签: mysql

我正在尝试运行存储过程并且遇到实际问题调试.....

我已经尝试过切断所有内容以尝试追踪问题,甚至到目前为止我遇到了错误:

DROP PROCEDURE IF EXISTS sp_transpose_tickets;
CREATE PROCEDURE sp_transpose_tickets ()
BEGIN
select 1;
END

这是在我的本地计算机上,在root用户下,因此所有权限都被授予...运行mySQL 5.5.20。

错误是:

错误:您的SQL语法出错;检查与MySQL服务器版本对应的手册,以便在第2行的''附近使用正确的语法

错误:您的SQL语法出错;检查与MySQL服务器版本对应的手册,以便在第1行的“END”附近使用正确的语法

1 个答案:

答案 0 :(得分:4)

您应该定义分隔符:

DELIMITER $$

DROP PROCEDURE IF EXISTS sp_transpose_tickets $$
CREATE PROCEDURE sp_transpose_tickets ()
BEGIN
    select 1;
END$$

DELIMITER ;