2017-01-19 50 views
0

我有一個返回兩個變量的過程。其中之一是光標。 我想在這兒做Ebean ORM不能與oracle遊標一起工作

String removalQuery = "{call REA.FILL_EVENT.REMOVAL_73_1_1(?,?,?,?) } "; 
     CallableSql cs = Ebean.createCallableSql(removalQuery); 
     cs.setParameter(1,doc.poeSteamTurbine.vid); 
     cs.setParameter(2,doc.form.periodId); 
     cs.registerOut(3, Types.INTEGER); 
     cs.registerOut(4, Types.REF_CURSOR); 
     Ebean.execute(cs); 

但它會導致錯誤

2012 is incorrect data type 

Ebean能夠使用遊標工作?

回答

0

我意識到這個問題現在已經老了,但我會寫這個以防萬一它幫助別人。

我想出了一個類似的問題,連接到Oracle數據庫。在我的情況下,問題是REF_CURSOR類型,它會產生你描述的錯誤。我的解決方案是將其更改爲oracle.jdbc.OracleTypes.CURSOR,這解決了問題。

如果你沒有使用Oracle數據庫,類型將會是別的,但你仍然需要改變它。