您的位置:首页 > 数据库 > MySQL

mysql创建存储过程时ERROR 1064 (42000)的解决办法

2014-10-31 16:52 429 查看
转载自:http://blog.chinaunix.net/uid-20263484-id-110165.html


MySql中delimiter的作用是什么?

其实就是告诉mysql解释器,该段命令是否已经结束了,mysql是否可以执行了。

默认情况下,delimiter是分号;。在命令行客户端中,如果有一行命令以分号结束,

那么回车后,mysql将会执行该命令。如输入下面的语句

mysql> select * from test_table;

然后回车,那么MySQL将立即执行该语句。

mysql默认是把;看成是procedure的结束符了,于是procedure便解析失败了。

在声明存储过程之前声明//为结束符

DELIMITER //

然后以//结束存储过程就好了

如果想恢复到之前的;结束,DELIMITER ;便可以了。习惯一般都是用;作为结束符。而create procedure的时候里面会有很多;,所以导致在;回车的时候默认就执行了,而导致错误。

procedure的语法规则:

create
procedure sp_name()

begin

.........

end
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐