我正在尝试创建一个mysql存储过程。我已使用以下代码成功创建了一个过程:
delimiter $$
CREATE PROCEDURE `myprocedure` (IN
var1 DATE)
BEGIN
<---code-->
END
并且
SHOW CREATE PROCEDURE myprocedure
向我展示了我创建的程序。
但是Call myprocedure(2011-05-31);
显示以下错误
#1305 - PROCEDURE db.myprocedure does not exist
db是我创建过程的数据库
我做错了什么?
有人可以帮助我吗?
答案 0 :(得分:4)
请检查以下示例,特别注意使用分隔符和引用日期输入参数。
drop procedure if exists my_procedure;
delimiter #
create procedure my_procedure
(
in p_start_date date
)
begin
-- do something...
select p_start_date as start_date; -- end of sql statement
end# -- end of stored procedure block
delimiter ; -- switch delimiters again
call my_procedure('2011-01-31');
+------------+
| start_date |
+------------+
| 2011-01-31 |
+------------+
1 row in set (0.00 sec)