【问题标题】:Trouble creating stored procedure创建存储过程时遇到问题
【发布时间】:2011-02-18 17:39:23
【问题描述】:

我第一次使用存储过程,但甚至无法创建简单的选择!我正在使用 phpMyAdmin,这是我的 SQL:

DELIMITER // 
CREATE PROCEDURE test_select() 
BEGIN 
SELECT * FROM products LIMIT 10; 
END // 
DELIMITER ;

提交之后,我的 localhost 思考了很长时间,最终加载了一个名为 /phpmyadmin/import.php 的没有内容的页面。重新加载 phpMyAdmin 并尝试调用该过程后:

CALL test_select();

我收到“PROCEDURE 不存在”错误。有什么想法吗?

【问题讨论】:

    标签: mysql stored-procedures phpmyadmin


    【解决方案1】:

    尝试使用phpMyAdmin的delimiter字段,如下截图所示:

    只需在查询窗口中输入以下内容:

    CREATE PROCEDURE test_select() 
    BEGIN 
        SELECT * FROM products LIMIT 10; 
    END
    

    另外请注意,一些旧版本的phpMyAdmin存在bug,当你从phpMyAdmin调用包含SELECT语句的存储过程时可能会导致错误。

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

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

    【讨论】:

    • 问题实际上是我在查询中直接使用了 DELIMITER // 当我应该使用 phpMyAdmin 的 UI 来更改分隔符时。不过,您的第二个链接给了我答案,所以+1。碰巧我也有 phpMyAdmin 错误。呸!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-05-27
    • 1970-01-01
    • 2018-05-22
    • 1970-01-01
    • 2014-08-12
    • 1970-01-01
    相关资源
    最近更新 更多