怎樣讓 Oracle 的預存程序返回結果集
怎樣讓 oracle 的預存程序返回結果集?
Oracle 預存程序:
Java 調用代碼:
try {<br /> DriverManager.registerDriver (new oracle.jdbc.OracleDriver());<br /> Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:ora10g", "user", "user"); </p><p> CallableStatement stmt = conn.prepareCall("BEGIN GETCITY(?, ?); END;");<br /> //CallableStatement stmt = conn.prepareCall("{ call GETCITY(?, ?) }"); </p><p> stmt.setString(1, "021");<br /> stmt.registerOutParameter(2, -10 /* OracleTypes.CURSOR = -10 */); //REF CURSOR(OracleTypes.CURSOR==-10)<br /> stmt.execute();<br /> ResultSet rs = (ResultSet) stmt.getObject(2);<br /> while (rs.next()) {<br /> System.out.println(rs.getString("CITY_NAME"));<br /> }<br /> rs.close();<br /> rs = null;<br /> stmt.close();<br /> stmt = null;<br /> conn.close();<br /> conn = null;<br /> }<br /> catch (SQLException e) {<br /> System.out.println(e.getLocalizedMessage());<br /> }
原文連結:http://wjw465150.javaeye.com/blog/396071。