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

时间:2013-12-19 10:20:01

标签: mysql sql stored-procedures phpmyadmin

我创建了一个简单的程序:

CREATE PROCEDURE  `simpleProcedure` ( IN  `parameter` INT) NOT DETERMINISTIC READS SQL DATA SQL SECURITY DEFINER 
BEGIN
SELECT * 
FROM table1;    
END

在phpMyAdmin中使用CALL simpleProcedure(1)运行此过程不会显示查询结果...如何让phpMyAdmin在过程中显示查询结果?

1 个答案:

答案 0 :(得分:0)

您需要 OUT 参数才能返回结果,请参阅http://dev.mysql.com/doc/refman/5.0/en/create-procedure.html

来自sakila数据库的示例:

DELIMITER $$ 
CREATE DEFINER=`root`@`127.0.0.1` PROCEDURE `film_in_stock`(IN p_film_id INT, IN p_store_id INT, OUT p_film_count INT)
    READS SQL DATA 
BEGIN
     SELECT inventory_id
     FROM inventory
     WHERE film_id = p_film_id
     AND store_id = p_store_id
     AND inventory_in_stock(inventory_id);

     SELECT FOUND_ROWS() INTO p_film_count; 
END$$