我正在使用JDBC编写JAVA程序以实现数据库连接性,我正在调用一个返回ORACLE REF CURSOR的存储过程,有没有办法在不导入ORACLE PACKAGES的情况下处理它?</ p>
答案 0 :(得分:1)
我想我前一段时间尝试过这种做法并且放弃了(我想你可以弄清楚OracleTypes.REF_CURSOR是什么int值然后使用那个int值,但这是一个黑客攻击)。如果你有耐心,你可以定义一个记录(或对象)类型,并将光标定义为具有类型的游标,因为可以使用表将其转换为可选择的值,如常规表,即
select * from table( sp_returning( ? ) )
我在ref游标和jdbc上做了一个快速谷歌,看起来它可能是一个oracle扩展,它可以解释为什么没有标准的方法来访问数据。
答案 1 :(得分:-1)
做
select * from table( sp_returning( ? ) )
比返回引用游标慢。
我可以将ref游标与C#结合使用,为什么不能用Java做呢?我确信有很多例子。