我使用命令
在MySql中创建了一些存储过程CREATE PROCEDURE sample()
BEGIN
SELECT * FROM members;
END //
但是当我想在我的phpMyAdmin或使用php来调用存储过程时我没有得到结果。我使用的命令
CALL sample;
以及
CALL sample();
当我使用他上面的查询时,没有显示输出,而是将页面重定向到phpMyAdmin主页。 我需要在phpMyAdmin ???
中进行任何更改答案 0 :(得分:2)
使用()
来调用存储过程
CALL sample();
http://forums.mysql.com/read.php?98,358569
你错过了DELIMITER DELIMITER //
CREATE PROCEDURE sample()
BEGIN
SELECT * FROM members;
END //
DELIMITER ;
答案 1 :(得分:1)
您的存储过程很可能尚未创建。
您必须包含DELIMITER
命令告诉MySQL忽略命令中的;
:
DELIMITER //
CREATE PROCEDURE sample()
BEGIN
SELECT * FROM members;
END//
DELIMITER ;
告诉MySQL使用不同的分隔符(在这种情况下为//
)并在查询结束时将其恢复(标准;
分隔符)。
然后,使用SHOW PROCEDURE STATUS
检查您的程序是否存在。
据我所知,您不应该使用方括号()
来调用不需要任何参数的过程。
希望有所帮助。