﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>语源科技BlogJava-IBM技术交流</title><link>http://www.blogjava.net/xiuyith/</link><description /><language>zh-cn</language><lastBuildDate>Thu, 07 May 2026 07:23:50 GMT</lastBuildDate><pubDate>Thu, 07 May 2026 07:23:50 GMT</pubDate><ttl>60</ttl><item><title>用java 调用 oracle  返回结果为游标的函数</title><link>http://www.blogjava.net/xiuyith/archive/2009/01/09/250635.html</link><dc:creator>越战越勇</dc:creator><author>越战越勇</author><pubDate>Fri, 09 Jan 2009 03:02:00 GMT</pubDate><guid>http://www.blogjava.net/xiuyith/archive/2009/01/09/250635.html</guid><wfw:comment>http://www.blogjava.net/xiuyith/comments/250635.html</wfw:comment><comments>http://www.blogjava.net/xiuyith/archive/2009/01/09/250635.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/xiuyith/comments/commentRss/250635.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/xiuyith/services/trackbacks/250635.html</trackback:ping><description><![CDATA[<p><span style="font-size: 12pt; color: #0000ff">oracle&nbsp; 函数<a href="http://www.blogjava.net/xiuyith"><br />
Create or REPLACE FUNCTION AAAAA (<br />
&nbsp;&nbsp;&nbsp;&nbsp;P_USER_ID_I&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; IN&nbsp;&nbsp;VARCHAR2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; --接收输入参数<br />
)<br />
RETURN&nbsp;&nbsp; SYS_REFCURSOR<br />
AS<br />
&nbsp;&nbsp;&nbsp;&nbsp;P_RESULT_SET_O&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SYS_REFCURSOR; --返回游标<br />
&nbsp;&nbsp;&nbsp;&nbsp;X_SQL VARCHAR2(200);<br />
BEGIN<br />
&nbsp;&nbsp;&nbsp;&nbsp; X_SQL :='select user_id,user_name,email from user_mst where user_id like ''%' || P_USER_ID_I ||'%''';&nbsp;&nbsp;--生成SQL语句<br />
&nbsp;&nbsp;&nbsp;&nbsp; OPEN P_RESULT_SET_O FOR X_SQL;<br />
&nbsp;&nbsp;&nbsp;&nbsp; RETURN P_RESULT_SET_O;&nbsp;&nbsp; --返回游标<br />
END AAAAA;<br />
</a><br />
JAVA 程序调用<a href="http://www.blogjava.net/xiuyith"><br />
CallableStatement cstmt = null;<br />
ResultSet rs = null;<br />
try {<br />
String callSql = "{? = call AAAAA(?)}";<br />
cstmt = conn.prepareCall(callSql);<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
cstmt.setString(2, "userName");<br />
<br />
cstmt.registerOutParameter(1, oracle.jdbc.OracleTypes.CURSOR);<br />
<br />
cstmt.execute();<br />
<br />
rs = (ResultSet) cstmt.getObject(1);<br />
if (rs != null) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.print("usercd");<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.print("userName");&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("EMAIL");<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while (rs.next()) {&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;System.out.print(rs.getString(1)+"&nbsp;&nbsp; ");<br />
&nbsp;&nbsp;&nbsp;&nbsp;System.out.print(rs.getString(2)+"&nbsp;&nbsp; ");&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(rs.getString(3));<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }&nbsp;&nbsp;&nbsp;&nbsp;<br />
}</span></a></p>
<img src ="http://www.blogjava.net/xiuyith/aggbug/250635.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/xiuyith/" target="_blank">越战越勇</a> 2009-01-09 11:02 <a href="http://www.blogjava.net/xiuyith/archive/2009/01/09/250635.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>