国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 數(shù)據(jù)庫(kù) > Oracle > 正文

Oracle Package返回游標(biāo)和Java調(diào)用

2024-08-29 13:34:42
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

  創(chuàng)建測(cè)試Oracle包: Oracle Package返回游標(biāo)和Java調(diào)用create or replace package pkg_test asOracle Package返回游標(biāo)和Java調(diào)用Oracle Package返回游標(biāo)和Java調(diào)用type t_ref is ref cursor;Oracle Package返回游標(biāo)和Java調(diào)用PRocedure p_test(cur_ref out t_ref);Oracle Package返回游標(biāo)和Java調(diào)用Oracle Package返回游標(biāo)和Java調(diào)用end pkg_test;Oracle Package返回游標(biāo)和Java調(diào)用/Oracle Package返回游標(biāo)和Java調(diào)用Oracle Package返回游標(biāo)和Java調(diào)用create or replace package body pkg_test asOracle Package返回游標(biāo)和Java調(diào)用Oracle Package返回游標(biāo)和Java調(diào)用procedure p_test(cur_ref out t_ref) isOracle Package返回游標(biāo)和Java調(diào)用Oracle Package返回游標(biāo)和Java調(diào)用beginOracle Package返回游標(biāo)和Java調(diào)用open cur_ref for 'select * from test';Oracle Package返回游標(biāo)和Java調(diào)用end p_test;Oracle Package返回游標(biāo)和Java調(diào)用Oracle Package返回游標(biāo)和Java調(diào)用end pkg_test;Oracle Package返回游標(biāo)和Java調(diào)用/
  
  下面是jdbc代碼的調(diào)用。   當(dāng)然假如采用jdbc直接獲得Connection下面的代碼是沒(méi)問(wèn)題的。 Oracle Package返回游標(biāo)和Java調(diào)用oracle.jdbc.OracleCallableStatement cs = null;Oracle Package返回游標(biāo)和Java調(diào)用String sqlStr = "{call firstpage.getSeniorHighSchool(?,?,?)}";Oracle Package返回游標(biāo)和Java調(diào)用ResultSet rs = null;Oracle Package返回游標(biāo)和Java調(diào)用try{Oracle Package返回游標(biāo)和Java調(diào)用cs = (oracle.jdbc.OracleCallableStatement)conn.prepareCall(sqlStr);Oracle Package返回游標(biāo)和Java調(diào)用cs.setLong(1,arg[0]);Oracle Package返回游標(biāo)和Java調(diào)用cs.setLong(2,arg[1]);Oracle Package返回游標(biāo)和Java調(diào)用Oracle Package返回游標(biāo)和Java調(diào)用cs.registerOutParameter(3,oracle.jdbc.OracleTypes.CURSOR);Oracle Package返回游標(biāo)和Java調(diào)用cs.execute();Oracle Package返回游標(biāo)和Java調(diào)用rs = cs.getCursor(3);Oracle Package返回游標(biāo)和Java調(diào)用Oracle Package返回游標(biāo)和Java調(diào)用while(rs.next()){Oracle Package返回游標(biāo)和Java調(diào)用//...........Oracle Package返回游標(biāo)和Java調(diào)用}Oracle Package返回游標(biāo)和Java調(diào)用rs.close();Oracle Package返回游標(biāo)和Java調(diào)用cs.close();Oracle Package返回游標(biāo)和Java調(diào)用}catch(Exception e){Oracle Package返回游標(biāo)和Java調(diào)用System.out.println("prodUCe error ");Oracle Package返回游標(biāo)和Java調(diào)用e.printStackTrace();Oracle Package返回游標(biāo)和Java調(diào)用}
  但是,假如采用連接池(比如:采用Weblogic或jboss等web服務(wù)器自帶的連接池) 哈哈,這段代碼就會(huì)讓你頭疼了。不信你試試。拋出CastClassException哈哈。   下面是另一種寫(xiě)法,保你沒(méi)事。這種寫(xiě)法風(fēng)水好。哈哈 Oracle Package返回游標(biāo)和Java調(diào)用CallableStatement cs = null;Oracle Package返回游標(biāo)和Java調(diào)用cs = conn.prepareCall(sql);Oracle Package返回游標(biāo)和Java調(diào)用cs.setInt(1,maxrow);Oracle Package返回游標(biāo)和Java調(diào)用cs.setInt(2,minrow);Oracle Package返回游標(biāo)和Java調(diào)用cs.registerOutParameter(3,oracle.jdbc.OracleTypes.CURSOR);Oracle Package返回游標(biāo)和Java調(diào)用cs.execute();Oracle Package返回游標(biāo)和Java調(diào)用rs = (ResultSet)cs.getObject(3);   差別很簡(jiǎn)單。   可以看看weblogic和jboss實(shí)現(xiàn)連接池的代碼就知道了。   一路ok了。


發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 云林县| 威远县| 岳普湖县| 渝中区| 临清市| 安陆市| 宁强县| 漳浦县| 龙岩市| 和静县| 黑山县| 通海县| 屯门区| 昌江| 宁强县| 永平县| 灵川县| 枣阳市| 谷城县| 清水河县| 武安市| 井研县| 石柱| 锦州市| 高密市| 霍州市| 大竹县| 新闻| 莱州市| 新源县| 张北县| 卓资县| 长子县| 西丰县| 托克托县| 左云县| 宜都市| 乌拉特后旗| 马龙县| 天台县| 广水市|