国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 行唐县| 南郑县| 长汀县| 阳曲县| 兴业县| 德庆县| 青河县| 阜城县| 合水县| 班戈县| 新昌县| 资溪县| 徐州市| 马龙县| 沁水县| 腾冲县| 莱西市| 乃东县| 延川县| 温州市| 达孜县| 博罗县| 报价| 吉林市| 右玉县| 云龙县| 巴彦县| 隆化县| 泽库县| 光泽县| 塘沽区| 无为县| 宁蒗| 旌德县| 梓潼县| 兴仁县| 虎林市| 玉溪市| 西平县| 乌拉特中旗| 巫山县|