使用简单存储过程时为什么会出现MySQL错误#1312?

时间:2010-05-16 01:09:24

标签: mysql stored-procedures mysql-error-1312

我正在尝试学习如何使用MySQL存储过程。 MySQL接受了我的程序:

CREATE PROCEDURE SimpleProc()
   BEGIN
   SELECT *  FROM myTable;
   END

(在phpMyAdmin中,我设置了//用于分隔符。真实版本的名称是实际表而不是myTable。)。

但是,当我用CALL SimpleProc();调用该过程时,我收到错误“#1312 - PROCEDURE mydb.SimpleProc无法在给定的上下文中返回结果集”。

我读到某些版本的php或phpMyAdmin不能用于存储过程。

我正在使用运行在带有MAMP 1.9的Mac上的本地主机。我有MySQL 5.1.44,PHP 5.2.13& 5.3.2,phpMyAdmin 3.2.5。有谁知道存储过程是否适用于我的设置?我做错了什么吗?有什么建议吗?

向大红队大喊大叫,以获得Lax的三次加时胜利。

谢谢, Laxmidi

1 个答案:

答案 0 :(得分:3)

是的,某些旧版本的phpMyAdmin似乎存在错误,这可能会导致您收到的1312错误。当调用包含来自phpMyAdmin的SELECT语句的存储过程时,可能会发生这种情况。

您可能需要查看以下帖子以供进一步阅读:

此错误仅影响phpMyAdmin,您仍然可以从其他任何地方调用存储过程。