2014-05-15 25 views
-1

我有以下Oracle過程調用存儲過程:使用輸出參數,該參數是引用遊標通過Zend框架1

TYPE VarRecCur IS RECORD (
    CustomerId  Customer.CustomerId%TYPE, 
    Name   Customer.Name%TYPE 
    ); 

TYPE VarCursor_CUSTOMER IS REF CURSOR RETURN VarRecCur; 

PROCEDURE PROC_Customer(pCustomerId IN VARCHAR2,RECOUTPUT IN OUT VARCURSOR_CUSTOMER) 
IS 
BEGIN 
    OPEN RECOUTPUT FOR 
    SELECT CustomerId, Name FROM Customer 
    WHERE CustomerId = pCustomerId 
END PROC_Customer; 

現在我試圖使用Zend-DB從Zend框架1得到一個客戶數組,但我不能,那是我的嘗試:

require_once 'Zend/Db/Statement/Oracle.php'; 

$db = Zend_Db::factory ('pdo_oci', array ('dbname' => DB_SERVER,'username' => 'user','password' => 'pass')); 
$stmt = new Zend_Db_Statement_Oracle($db, "begin PROC_Customer('1',:cursor); end;"); 
$cursor = new Zend_Db_Cursor_Oracle($db); 
$stmt->bindCursor('cursor', $cursor); 
$stmt->execute(); 
var_dump($cursor); 

我做了它的工作原理,我有更多的新文件添加到我的Zend庫,我的問題是有另一種方式使用輸出參數是參考遊標調用存儲過程通過zend框架1庫?

問候

回答

0

我寫了這個answer到另外一個問題,也許它會幫助你。
這是爲MySql,所以我沒有測試,但我用你的pdo。