2

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

我已经尝试将所有内容都删掉以尝试追踪问题,甚至对此我也遇到了错误:

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”附近使用正确的语法

4

2 回答 2

5

您应该定义分隔符:

DELIMITER $$

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

DELIMITER ;
于 2012-12-05T01:59:16.683 回答
0

我在使用 Dbeaver 时遇到了同样的问题。我需要做的就是从头到尾选择我的查询并运行查询。如果我只将光标放在开头而不选择所有代码,则会向我显示相同的错误。

于 2022-02-11T13:48:30.807 回答