mysql - 存储过程不存在,即使在创建之后

标签 mysql database stored-procedures stored-functions

我正在尝试创建一个 mysql 存储过程。我已经使用以下代码成功创建了一个过程:

delimiter $$
CREATE PROCEDURE `myprocedure` (IN
 var1 DATE) 
BEGIN 
<---code--> 
END

SHOW CREATE PROCEDURE myprocedure

显示我创建的程序。

但是调用myprocedure(2011-05-31);

显示以下错误

#1305 - PROCEDURE db.myprocedure does not exist

db 是我创建过程的数据库

我做错了什么?

有人可以帮我吗?

最佳答案

请查看以下示例,特别注意分隔符的使用和日期输入参数的引用。

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)

关于mysql - 存储过程不存在,即使在创建之后,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6199572/

相关文章:

java - Callable 或 PreparedStatement 和事务

java - 从 Java 对象中动态选择字段

mysql - 如何加速我的 MySQL UUID v4 存储函数?

mysql - 以下查询没有给我预期的结果,请帮助我

php - 将下拉列表数据添加到 MySQL 数据库

php - 使用存储过程更新数据库时出错

php - 与 PHP 内联更改日期格式的问题

mysql - 去掉 mysql 查询中的空值

python - 将 View 链接到 Django 链接

mysql - MySQL 中的 Bcrypt?