我正在使用Java连接到Oracle 10数据库。 我想创建一个不带参数的存储过程(不要问为什么) 并返回很多行。具体来说,在Java中我希望能够得到它 数据类似于:
ResultSet rs = stmt.executeQuery("call getChildless");
其中getChildless是查询:
SELECT objectid
FROM Object
WHERE objectid NOT IN (SELECT parent FROM subparts);
然而,我只是不能为我的生活弄清楚如何得到我的 存储过程的输出。我用谷歌搜索了,我得到了 所有这些Oracle不会编译的示例代码,大概是为了一个 以前的版本。反射器似乎出现了很多,但我不确定 如果这就是我真正想要的,那么将它与ResultSet一起使用。
答案 0 :(得分:0)
我认为Oracle JDBC就像MS-SQL JDBC ......
while (rs.next())
{
myint = rs.getInt(1);
}
答案 1 :(得分:0)
JDBC是动态类型的,它无法编译是没有意义的。 See this link to the JDBC Tutorial
答案 2 :(得分:0)
看看Retrieving Oracle Cursor with JDBC。这能满足您的需求吗?
答案 3 :(得分:0)
这可以通过oracle和中的CURSOR来完成 在java代码中遍历此CURSOR 请参考此链接:
http://www.mkyong.com/jdbc/jdbc-callablestatement-stored-procedure-cursor-example/