<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 閱讀(732) 評論(0)  編輯  收藏 所屬分類: 數據庫

    主站蜘蛛池模板: 亚洲精品tv久久久久| 国产特级淫片免费看| 亚洲av无码一区二区乱子伦as| 新最免费影视大全在线播放| 免费又黄又爽的视频| 日韩少妇内射免费播放| 国产成人99久久亚洲综合精品| 老司机精品视频免费| 久久久久亚洲av毛片大| 国内精品免费久久影院| 亚洲国产精品一区二区久久| 在线免费观看亚洲| 亚洲18在线天美| 免费观看的a级毛片的网站| 在线观看亚洲专区| 久久国产成人精品国产成人亚洲| 中国国产高清免费av片| 久久伊人久久亚洲综合| 91成人免费观看网站| 亚洲AV成人一区二区三区观看| 国产91久久久久久久免费| 97在线视频免费公开视频| 少妇中文字幕乱码亚洲影视| 久久久久久久91精品免费观看| 99亚洲精品卡2卡三卡4卡2卡| 亚洲AV成人潮喷综合网| 久久aⅴ免费观看| 久久国产亚洲精品| 亚洲中文字幕无码爆乳av中文| 久久久精品午夜免费不卡| 亚洲人成在线免费观看| 免费看一级做a爰片久久| 两个人看的www视频免费完整版| 亚洲人成电影亚洲人成9999网| 99无码人妻一区二区三区免费 | 久久精品成人免费观看97| 亚洲高清在线播放| 国产乱子伦片免费观看中字| 国产亚洲免费的视频看 | 日本中文字幕免费看| 亚洲麻豆精品果冻传媒|