【存储过程】在java语言中调用存储函数
来源:互联网 发布:淘宝店铺运营包含哪些 编辑:程序博客网 时间:2024/05/21 09:49
连接oracle数据库 private static Connection conn; static{ //第一步:加载驱动 try { Class.forName("oracle.jdbc.driver.OracleDriver"); //得到连接对象 conn=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl","scott","scott"); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } 实例一: 【 create or replace function sumSal(emp_no number)--function(参数的值 必须有类型) --返回值类型 return number--必须有返回值 as --声明变量 emp_sal emp.sal%type; emp_comm emp.comm%type; total emp.sal%type; begin select sal,comm into emp_sal,emp_comm from emp where empno=emp_no; total:=emp_sal*12+nvl(emp_comm,0); return total;--必须返回 返回值类型一定相同 end; 】 public static void functionTest1() throws SQLException{ //mypackage 存储函数 CallableStatement cas=conn.prepareCall("{?=call sumSal(?)}"); //从1开始 int index = 1; cas.registerOutParameter(index++, oracle.jdbc.OracleTypes.NUMBER); //为占位符赋值 cas.setInt(index++,7369); boolean flag=cas.execute(); System.out.println(flag); System.out.println(cas.getInt(1)); } 实例二: 【 通过包结构创建存储函数 create or replace package mypackage is type empc1 is ref cursor; function queryEmps return empc1; end mypackage; 包体 create or replace package body mypackage is function queryEmps return empc1 is emp_c1 empc1; begin open emp_c1 for select * from emp; return emp_c1; end; end mypackage; 】 public static void functionTest2() throws SQLException{ //mypackage 存储函数 CallableStatement cas=conn.prepareCall("{?=call mypackage.queryEmps}"); //从1开始 int index = 1; cas.registerOutParameter(index++, oracle.jdbc.OracleTypes.CURSOR); boolean flag=cas.execute(); System.out.println(flag); //调用里边的getCursor方法 返回的是ResultSet结果集 ResultSet rs = ((OracleCallableStatement)cas).getCursor(1); while(rs.next()){ System.out.println(rs.getInt(1)); } }
0 0
- 【存储过程】在java语言中调用存储函数
- 【存储过程】 在java语言中调用存储过程
- 在java语言中调用存储过程
- 在java语言中调用存储函数
- 在Java语言中调用存储过程、存储函数、包头、包体
- oracle--在java中调用存储过程和存储函数
- 在java语言中访问存储过程和存储函数
- Java中调用存储过程或函数
- java中调用存储过程或函数
- java中调用存储过程或函数
- 在应用程序中调用Oracle存储过程和存储函数
- 在Java中怎么调用存储过程
- 在Java中调用存储过程(详细)
- 在java中调用mysql存储过程
- 在java中调用Oracle存储过程
- 在java中调用Oracle存储过程
- 在 java web 中调用存储过程
- 在Java中调用存储过程(详细)
- STM32系列第4篇--C语言复习
- Activity四种启动模式说明
- [C/C++11]_[初级]_[使用正则表达式库regex]
- flume+kafka+storm整合文件
- webview onReceivedError 接收不到404
- 【存储过程】在java语言中调用存储函数
- 关于时间戳和日期,时间的互换
- JVM线程内存区域划分
- 通过webhdfs put文件到hdfs
- iOS 之 GCD(1)
- 测试人必备:国内外最好用的6款Bug跟踪管理系统
- hdu 3874(树状数组+离线算法)
- C++内存对象分配问题
- NAT的种类