<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    sunfruit[請訪問http://www.fruitres.cn]

    --我相信JAVA能走得更遠 QQ:316228067

    JAVA調用返回結果集的存儲過程--Oracle

    ? --sunfruit

    建立存儲過程,存儲過程為:

    CREATE OR REPLACE PROCEDURE TESTC(p_CURSOR out TESTPACKAGE.Test_CURSOR) IS

    BEGIN

    ??? OPEN p_CURSOR FOR SELECT * FROM HYQ.TESTTB;

    END TESTC;

    可以看到,它是把游標(可以理解為一個指針),作為一個out 參數來返回值的。

    在java里調用時就用下面的代碼:

    package com.hyq.src;

    import java.sql.*;

    import java.io.OutputStream;

    import java.io.Writer;

    import java.sql.PreparedStatement;

    import java.sql.ResultSet;

    import oracle.jdbc.driver.*;

    public class TestProcedureTHREE {

    ? public TestProcedureTHREE() {

    ? }

    ? public static void main(String[] args ){

    ??? String driver = "oracle.jdbc.driver.OracleDriver";

    ??? String strUrl = "jdbc:oracle:thin:@127.0.0.1:1521:hyq";

    ??? Statement stmt = null;

    ??? ResultSet rs = null;

    ??? Connection conn = null;

    ??? try {

    ????? Class.forName(driver);

    ????? conn =? DriverManager.getConnection(strUrl, "hyq", "hyq");

    ????? CallableStatement proc = null;

    ????? proc = conn.prepareCall("{ call hyq.testc(?) }");

    ????? proc.registerOutParameter(1,oracle.jdbc.OracleTypes.CURSOR);

    ????? proc.execute();

    ????? rs = (ResultSet)proc.getObject(1);

    ????? while(rs.next())

    ????? {

    ????????? System.out.println("<tr><td>" + rs.getString(1) + "</td><td>"+rs.getString(2)+"</td></tr>");

    ????? }

    ??? }

    ??? catch (SQLException ex2) {

    ????? ex2.printStackTrace();

    ??? }

    ??? catch (Exception ex2) {

    ????? ex2.printStackTrace();

    ??? }

    ??? finally{

    ????? try {

    ??????? if(rs != null){

    ????????? rs.close();

    ????????? if(stmt!=null){

    ??????????? stmt.close();

    ????????? }

    ????????? if(conn!=null){

    ??????????? conn.close();

    ????????? }

    ??????? }

    ????? }

    ????? catch (SQLException ex1) {

    ????? }

    ??? }

    ? }

    }

    在這里要注意,在執行前一定要先把oracle的驅動包放到class路徑里,否則會報錯的。

    posted on 2006-06-15 09:36 sunfruit 閱讀(738) 評論(0)  編輯  收藏 所屬分類: 數據庫

    主站蜘蛛池模板: 国产精品免费αv视频| 亚洲日本人成中文字幕| 老司机精品视频免费| 色吊丝最新永久免费观看网站| 亚洲91精品麻豆国产系列在线| 91在线手机精品免费观看| 久久久久亚洲av无码专区导航| 香蕉免费一区二区三区| 久久久久久亚洲精品中文字幕| 国产一精品一AV一免费| 亚洲AV日韩AV高潮无码专区| 久久青草国产免费观看| 亚洲AV日韩AV天堂久久| 色影音免费色资源| 亚洲精品国产首次亮相| 国产在线播放免费| 国产精品极品美女自在线观看免费| 中文字幕中韩乱码亚洲大片| 二个人看的www免费视频| 亚洲成av人片天堂网| 亚洲精品免费在线视频| 亚洲综合无码一区二区痴汉| 国产免费爽爽视频免费可以看| 免费人成动漫在线播放r18| 亚洲精品中文字幕无码蜜桃| 日本免费大黄在线观看| 亚洲av永久综合在线观看尤物| 在线免费观看色片| 一级毛片高清免费播放| 亚洲Av永久无码精品三区在线 | 亚洲综合另类小说色区色噜噜| 你懂的在线免费观看| 亚洲精品不卡视频| 国产大片91精品免费看3| 青柠影视在线观看免费| 亚洲中文字幕无码av在线| 内射无码专区久久亚洲| 日韩精品人妻系列无码专区免费| 亚洲一区二区三区高清视频| 伊在人亚洲香蕉精品区麻豆| 99re这里有免费视频精品|