学习mysql(一)error:1064

转载

在导入存储过程时经常遇见下列DECLARE报错的问题:

 

Error Code : 1064

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 3

(0 ms taken)

 

有多少个DECLARE就会报多少次,然后后面就是取不到变量的报错。

 

这个原因是没有定义delimiter

 

如下的会报错:

CREATE PROCEDURE p8() 

BEGIN 

DECLARE a INT; 

DECLARE b INT; 

SET a = 5; 

SET b = 5; 

select pkid,name,userGroup_desc,parent_id,group_state from T_VSM_SECPOLICY_USERGROUP; 

END;

错误信息:

Error Code : 1064

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 3

(0 ms taken)

 

。。。。

 

添加了delimiter后就不报了

delimiter //

CREATE PROCEDURE p8()  

BEGIN  

DECLARE a INT;  

DECLARE b INT;  

SET a = 5;  

SET b = 5;  

declare cur0 cursor for select pkid from T_VSM_SECPOLICY_USERGROUP;  --这里为什么报错?

END//

 

具体原因可以查看mysql的官方手册

http://dev.mysql.com/doc/refman/5.1/zh/stored-procedures.html#declare-handlers

中的创建存储过程章节里的下列内容,不能被忽视了:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值