How to make Oracle stored procedures return result sets
How does one allow Oracle stored procedures to return result sets?
Oracle stored procedure:
Java call code:
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.exe cute (); <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/>}
Link to the original article: http://w00000000150.javaeye.com/blog/396071.