我有一个返回两个变量的过程。 其中之一是光标。我试图在这里这样做
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 能够使用游标吗?
我意识到这个问题现在已经很老了,但我会写这个以防它对某人有帮助。
我想到了类似的问题,连接到Oracle数据库。就我而言,问题是REF_CURSOR
类型,它会产生您描述的错误。我的解决方案是将其更改为 oracle.jdbc.OracleTypes.CURSOR
,这解决了问题。
如果您不使用 Oracle 数据库,则类型将是其他类型,但您仍然需要更改它。