按照网上的说法,建立了多次,都提示失败,代码如下:
create procedure search
(
idt int
)
BEGIN
SELECT * FROM xx WHERE id = idt;
end;
总是提示各种错误。。。
Google找了很久,终于找到了准确的方法,原来是要让mysql知道该段命令是否已经结束,可以运行。代码如下:
delimiter create procedure search
(
idt int
)
BEGIN
SELECT * FROM xx WHERE id = idt;
end
delimiter ;
这个命令与存储过程没什么关系吧,呵呵。其实就是告诉mysql解释器,该段命令(存储过程)是否已经结束了,mysql是否可以执行了。默认情况下,delimiter 是分号“;”一执行的话,后面的语句就不执行了,从而出错。使用delimiter就是定义一下命令结束标记,将”;”临时换成其他符号。可以使用”$$”或者”//”。