中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      Java中調(diào)用Oracle包的過程

      時間:2024-06-27 21:21:55 Oracle認證 我要投稿
      • 相關(guān)推薦

      Java中調(diào)用Oracle包的過程

        在Java中調(diào)用Oracle包是我們程序員經(jīng)常遇到的事情,那么它具體的過程是怎么樣的呢?我們一起來看看!

        一、先在oracle中編寫測試過程

        1、首選建一個測試表

        -- Create table

        create table BOOK

        (

        BOOKID VARCHAR2(50) not null,

        BOOKNAME VARCHAR2(50) not null,

        PUBLISHER VARCHAR2(50) not null,

        PRICE VARCHAR2(50) null

        )

        2、編寫ORACLE測試過程

        CREATE OR REPLACE PACKAGE pkg_test

        AS

        TYPE myrctype IS REF CURSOR;

        PROCEDURE get (p_id VARCHAR2, p_str OUT VARCHAR2, p_rc OUT myrctype);

        END pkg_test;

        /

        CREATE OR REPLACE PACKAGE BODY pkg_test

        AS

        PROCEDURE get (p_id VARCHAR2, p_str OUT VARCHAR2,p_rc OUT myrctype)

        IS

        sqlstr VARCHAR2 (500);

        BEGIN

        p_str := ''''Hello,may~'''';

        IF p_id = ''''all'''' THEN

        OPEN p_rc FOR

        SELECT *

        FROM BOOK;

        ELSE

        sqlstr :=

        ''''select *

        from BOOK where BOOKID=:w_id'''';

        OPEN p_rc FOR sqlstr USING p_id;

        END IF;

        END get;

        END pkg_test;

        /

        在這里我們建立了一個輸入?yún)?shù),為普通類型,兩個輸出參數(shù),其中一個為普通VARCHAR2型,另一個為特殊的記錄集類型。

        (注:在數(shù)據(jù)庫端測試一下這個過程,以確保沒有問題,開始下面的操作~:)

        二、編寫JAVA代碼測試過程

        /*

        * 創(chuàng)建日期: 2003-8-8

        */

        package JDBC;

        /**

        * 作者:may

        * 時間:15:09:23

        */

        import java.sql.*;

        import oracle.jdbc.driver.*;

        public class proctest {

        public static void main(String[] args) {

        proctest pc = new proctest();

        pc.ShowContent();

        }

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

        String sConnStr="jdbc:oracle:thin:@10.3.8.48:1521:ORADB";

        Connection connect=null;

        ResultSet rs = null;

        public proctest(){

        try{

        Class.forName(sDBDriver);

        }

        catch(ClassNotFoundException e){

        System.err.println(e.getMessage());

        }

        }

        public ResultSet ShowContent()

        {

        try{

        connect = DriverManager.getConnection(sConnStr,"SHUIBJ","SHUIBJ");

        CallableStatement stmt = connect.prepareCall("{call PKG_TEST.GET(?,?,?)}");

        stmt.setString(1,"all"); //輸入?yún)?shù)

        stmt.registerOutParameter(2,Types.CHAR); //輸出參數(shù)為普通參數(shù)

        stmt.registerOutParameter(3,OracleTypes.CURSOR); //輸出參數(shù)為結(jié)果集參數(shù)

        stmt.executeQuery();

        rs = ((OracleCallableStatement) stmt).getCursor(3); //得到輸出結(jié)果集參數(shù)

        ResultSetMetaData rsmd = rs.getMetaData();

        int numberOfColumns = rsmd.getColumnCount();

        String str = stmt.getString(2);

        System.out.println("第二個參數(shù)為:"+str);

        System.out.println("結(jié)果集列數(shù)"+numberOfColumns);

        //列出結(jié)果集中的記錄

        ResultSetMetaData md = rs.getMetaData();

        int nColumns = md.getColumnCount();

        for (int i=1;i<=nColumns;i++){

        System.out.print(md.getColumnName(i)+((i==nColumns)?"\n":"\t"));

        if(i==2) System.out.print("\t");

        }

        while (rs.next()){

        for(int i=1;i<=nColumns;i++){

        System.out.print(rs.getString(i)+((i==nColumns)?"\n":"\t"));

        }

        }

        }

        catch(SQLException ex){

        System.err.println(ex.getMessage()+"連數(shù)據(jù)庫有問題!");

        }

        return rs;

        }

        }

        輸出結(jié)果為:

        第二個參數(shù)為:Hello,may~

        結(jié)果集列數(shù)4

        BOOKID BOOKNAME PUBLISHER PRICE

        001-22-23-1 jsp 應(yīng)用開發(fā)詳解 電子工業(yè)出版社 123

        123 uml參考手冊 機械工業(yè)出版社 34

      主站蜘蛛池模板: 象山县| 中文字幕一二区中文字幕| 久久久99精品免费观看乱色| 国产精品一区二区三级| 会昌县| 久久久99久久久国产自输拍| 粗大挺进尤物人妻一区二区| 一二三四中文字幕日韩乱码| 安岳县| 中文字幕亚洲精品乱码在线看| 亚洲av日韩片在线观看| 久久亚洲aⅴ精品网站婷婷| 中文字幕一区二区三区久久蜜桃| 龙里县| 99久久久69精品一区二区三区| 一本一本久久a久久精品综| 在线观看免费人成视频国产| 亚洲精品中文字幕综合| 久久婷婷国产综合精品| 东丽区| 亚洲色欲色欲大片WWW无码| 隆安县| 邳州市| 诏安县| 濉溪县| 午夜亚洲国产精品福利| 德兴市| av一区二区精品在线| 土默特左旗| 彭泽县| 国产精品国产三级国产av主| 临邑县| 久久亚洲中文字幕精品一区四| 华安县| 好爽~又到高潮了毛片视频| av中文码一区二区三区| 国产精品一区久久av| 久久婷婷国产综合精品| 国产精品制服一区二区| 日韩在线精品观看视频| 91亚洲精品久久久蜜桃|