2
我有SP自定義類型:傳遞多維數組Oracle存儲過程
Create Or Replace Type tyTestArrayType As Object
(siF1 SmallInt,
siF2 SmallInt,
siF3 SmallInt);
Create Or Replace Type tyTestArray Is Table Of tyTestArrayType;
Create Or Replace Procedure prTestArray(pArr tyTestArray,
pResult In Out SmallInt)
Is
Begin
pResult := 0;
For I In 1..pArr.Count
Loop
pResult := pResult + pArr(I).siF1 + pArr(I).siF2 + pArr(I).siF3;
End Loop;
End;
如何使用從PHP(OCI8)這個程序(通過多維數組)?
謝謝,
更新:
這是紅寶石執行此代碼:作爲輸入
plsql.connection = OCI8.new("user","pass","host/XE")
testArray = [{:sif1 => 1, :sif2 => 12, :sif3=>4},{:sif1 => 5, :sif2 => 2, :sif3=>3}]
puts plsql.prTestArray(p_testArray,0) #=> {:presult=>27}
該數組有一個維度,所以它不是多維的。 – kubanczyk 2012-01-15 19:48:02
是的,但我需要傳遞tyTestArrayTypes的數組: pArr = array(tyTestArrayType,tyTestArrayType,tyTestArrayType ...) – Savash 2012-01-16 11:34:39