多语言展示
当前在线:1529今日阅读:27今日分享:41

排错 : You have an error in your SQL syntax

今天在写一个mysql的存储过程时,出现了一个莫名其妙的错误:You have an error in your SQL syntax; check the manual that corresponds to your MySQL......,很简单的一个存储过程,怎么会出现语法错误的?下面一起来排解下。
方法/步骤
1

写的是创建存储过程的sql,这个存储过程的功能主要是插入数据到数据库,写好后,运行sql,却出错了如图所示的错误。

2

为了排错,把存储过程的内容简单化,修改sql代码,如图

3

重新执行sql,出现了同样的错误。为什么这样?sql本身已经很简单了,为什么还会有语法错误?

4

点击出错信息,Message里的信息,在下面看到完整的出错信息,提示说的就是语法错误。

5

点击左边的Query语句,在下面看到详细信息,为什么只有一部分的sql?后面的呢?end去哪里了?问题出在这里?

6

再次修改存储过程的内容,在begin语句里加多一条sql语句,如图

7

执行后,既然通过,没问题了...才想起,在存储过程里,如果有多条sql语句的,需要用begin,end。但如果只有一条语句的,则是不能有begin, end的....

8

再次修改存储过程,改成只用一条select语句,且把beign,end关键字注释掉。执行后,果然顺利通过了。

推荐信息