phpmyadmin 在创建存储过程时卡住了

Posted

技术标签:

【中文标题】phpmyadmin 在创建存储过程时卡住了【英文标题】:phpmyadmin stucks while creating stored procedure 【发布时间】:2016-03-02 19:38:15 【问题描述】:

我正在尝试在 namecheap.com 服务器上的 phpmyadmin 中创建一个简单的存储过程。我已经在我的本地主机上创建了这个程序并且没有问题但是我无法理解为什么现在没有创建它。

我尝试过使用 mysql 以及添加例程选项。 我的表名是users,这里是存储过程

CREATE PROCEDURE getUsers (myUsername varchar (32))
BEGIN
     SELECT * FROM `users` WHERE username = myUsername;
END$$

但是,我有另一个名为 albums 的表,并且我已经为该表编写了类似的程序并且它运行良好。请帮忙 Stucks on Loading Screen

【问题讨论】:

我不确定,但您不会在声明周围错过DELIMITER $$DELIMITER ; 吗? @Kenney 我的 phpmyadmin 版本具有分隔符字段,因此不会显式添加它们。我也尝试了“添加例程”选项,但它也卡在那里。 您帖子中的 SELECT 语句与您添加的图片中的不同。 好的,但它们看起来都是合法的。除了用户表相关的语句外,所有类似的语句都正常运行。我重新检查了一下,发现数据库中的用户表和其他表一样存在 那么这是“真正的”SELECT。这很重要,因为问题可能出在一个变量、列、类型等上。 【参考方案1】:

您需要DELIMITERIN 来作为参数:

DELIMITER //
 CREATE PROCEDURE getUsers (IN myUsername varchar (32))
    BEGIN
        SELECT * FROM `users` WHERE username = myUsername;
    END //
 DELIMITER ;

【讨论】:

这些都不是问题,我试过了。如果分隔符有问题,那么它应该是从“添加例程”选项中添加的,但是当我从那里尝试时,它卡住了。我添加了带有问题的屏幕截图。请查看。 使用我的脚本并直接作为查询而不是这个向导运行 你能指导我更多关于我的脚本吗? 另外的问题是除了用户表相关的任何内容之外,其他查询和脚本运行正常。 同样的事情只是你不需要那个工具来创建一个sp。尝试,因为我不确定它为什么会冻结

以上是关于phpmyadmin 在创建存储过程时卡住了的主要内容,如果未能解决你的问题,请参考以下文章

重新登录到 phpmyadmin 后,存储过程在 mysql 中消失了

phpmyadmin 操作日志存储在哪里?

在 MySql/phpmyadmin 中创建存储过程

创建存储过程时遇到问题

pl/sql编译存储过程卡住的解决方法

phpMyAdmin - SELECT 语句在存储过程中的结果未显示