java调用存储过程(有返回值)
2014-09-17 14:09
393 查看
表结构:
创建存储过程(有返回值):
java调用存储过程:
PS.
欢迎关注行者摩罗微信公众号(xingzhemoluo),共同交流编程经验,扫描下方二维码即可;
SQL> desc emp; 名称 是否为空? 类型 --------------------------------------------------------------------------------------------------- EMPNO NOT NULL NUMBER(4) ENAME VARCHAR2(10) JOB VARCHAR2(9) MGR NUMBER(4) HIREDATE DATE SAL NUMBER(7,2) COMM NUMBER(7,2) DEPTNO NUMBER(2)
创建存储过程(有返回值):
SQL> create or replace procedure pro_printEname(v_in_empno in number,v_out_ename out varchar2) 2 as 3 begin 4 select ename into v_out_ename from emp where empno=v_in_empno; 5 end pro_printEname; 6 / 过程已创建。
java调用存储过程:
import java.sql.*; public class printEname { public static void main(String[] args) { Connection conn=null; CallableStatement cstmt=null; try{ //注册驱动 Class.forName("oracle.jdbc.driver.OracleDriver"); //获取连接 conn=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:ORA","scott","tiger"); //调用存储过程 cstmt=conn.prepareCall("{call pro_printEname(?,?)}"); //对?赋值 cstmt.setInt(1, 7369); cstmt.registerOutParameter(2, oracle.jdbc.OracleTypes.VARCHAR); //执行 cstmt.execute(); //获取结果 String name=cstmt.getString(2); System.out.println(name); } catch(Exception e){ e.printStackTrace(); } finally{ try{ cstmt.close(); conn.close(); } catch(Exception e1){ e1.printStackTrace(); } } } }
PS.
欢迎关注行者摩罗微信公众号(xingzhemoluo),共同交流编程经验,扫描下方二维码即可;
相关文章推荐
- java和ibatis调用存储过程并取得返回值
- java和ibatis调用存储过程并取得返回值
- 将java的集合转换为数据库集合类型 解决weblogic调用存储过程的时候,返回值乱码问题
- 通过java调用存储过程往oracle数据库里插数据(无返回值)
- java和ibatis调用存储过程并取得返回值
- Java调用存储过程(有返回值)
- java和ibatis调用存储过程并取得返回值
- java调用存储过程
- 调用存储过程并且使用返回值的基本方法
- java调用存储过程
- 存储过程中调用JAVA程序段
- java 调用oracle的存储过程返回记录集
- 调用带 返回值 的存储过程
- 收集到的:如何调用存储过程,有返回值的,有参数的,存储过程中调用存储过程。(MS SQL Server)
- 关于存储过程的ADO调用的一些心得(输出参数,返回值)
- java 调用oracle的存储过程返回记录集
- java中调用存储过程的另类写法
- JAVA调用存储过程
- 关于存储过程的ADO调用的一些心得(输出参数,返回值)
- 在JAVA中实现数据库存储过程的统一调用