无法获取存储过程mysql的返回值

时间:2012-04-08 08:57:19

标签: mysql zend-framework stored-procedures out

我想使用Zend framework

获取存储过程的out参数

这是程序

DELIMITER //

CREATE procedure getAllUsers( out sysUsers VarChar(50) )

BEGIN
DECLARE usersCursor CURSOR FOR SELECT username  FROM SYSTEM_USERS;
OPEN usersCursor ;
FETCH  usersCursor  INTO sysUsers ;
CLOSE usersCursor ; 

END//
DELIMITER ;

这就是我通过Zend框架所做的事情

try {
        $db = Zend_Db_Table::getDefaultAdapter();
        $stmt = $db->query("CALL getAllUsers(@users)");

        //Returns an array containing all of the result set rows  
        $rows = $stmt->fetchAll();

        $stmt->closeCursor();
            print_r($rows);



    } catch (Exception $e) {
        echo 'error ' . $e;
    }

空数组返回!!如何返回recursor表单存储过程。

1 个答案:

答案 0 :(得分:0)

我在不使用像我这样的光标

的情况下解决了这个问题
 DELIMITER //

 CREATE procedure getAllUsers( )

 BEGIN
  SELECT username  FROM SYSTEM_USERS;

 END//
DELIMITER ;