1.调用存储过程

  1. public class CallOracleProc {
  2. public static void main(String[] args) throws Exception{
  3. String sql = "{call get_rax(?,?)}";
  4. Connection conn = JdbcUtil.getConnection();
  5. CallableStatement cstmt = conn.prepareCall(sql);
  6. //为第一个?号设置值,从1开始
  7. cstmt.setInt(1,7000);
  8. //为第二个?注册输出类型
  9. cstmt.registerOutParameter(2,Types.INTEGER);
  10. //执行调用过程
  11. cstmt.execute();
  12. //接收过程的返回值,即第二个?号
  13. int rax = cstmt.getInt(2);
  14. //显示
  15. System.out.println("7000元需要上交"+rax+"元税收");
  16. cstmt.close();
  17. conn.close();
  18. }
  19. }

2.调用函数

  1. public class CallOracleFunc {
  2. public static void main(String[] args) throws Exception{
  3. String sql = "{ ? = call findEmpNameAndJobAndSal(?,?,?) }";
  4. Connection conn = JdbcUtil.getConnection();
  5. CallableStatement cstmt = conn.prepareCall(sql);
  6.  
  7. //为第一个?注册输出类型
  8. cstmt.registerOutParameter(1,Types.VARCHAR);
  9. //为第二个?注入值
  10. cstmt.setInt(2,7788);
  11. //为第三个?注册输出类型
  12. cstmt.registerOutParameter(3,Types.VARCHAR);
  13. //为第四个?注册输出类型
  14. cstmt.registerOutParameter(4,Types.INTEGER);
  15. //执行函数调用
  16. cstmt.execute();
  17. //分别获取1,3,4占位符的值
  18. String ename = cstmt.getString(1);
  19. String job = cstmt.getString(3);
  20. int sal = cstmt.getInt(4);
  21. //显示
  22. System.out.println("7788--"+ename+"--"+job+"--"+sal);
  23. cstmt.close();
  24. conn.close();
  25. }
    }

jdbc调用存储过程和函数的更多相关文章

  1. JDBC(13)—JDBC调用存储过程和函数

    步骤: JDBC调用存储过程和函数 步骤: ①:通过Connection对象的prepareCall()方法创建一个CallableStatement对象的实例,在使用Connection对象的pre ...

  2. JDBC第二篇--【PreparedStatment、批处理、处理二进制、自动主键、调用存储过程、函数】

    这是我JDBC的第一篇 http://blog.csdn.net/hon_3y/article/details/53535798 1.PreparedStatement对象 PreparedState ...

  3. JDBC【PreparedStatment、批处理、处理二进制、自动主键、调用存储过程、函数】

    1.PreparedStatement对象 PreparedStatement对象继承Statement对象,它比Statement对象更强大,使用起来更简单 Statement对象编译SQL语句时, ...

  4. Java数据库连接——JDBC调用存储过程,事务管理和高级应用

    一.JDBC常用的API深入详解及存储过程的调用 相关链接:Jdbc调用存储过程 1.存储过程(Stored Procedure)的介绍 我们常用的操作数据库语言SQL语句在执行的时候需要先编译,然后 ...

  5. Java数据库连接--JDBC调用存储过程,事务管理和高级应用

    相关链接:Jdbc调用存储过程 一.JDBC常用的API深入详解及存储过程的调用 1.存储过程的介绍 我们常用的操作数据库语言SQL语句在执行的时候要先进行编译,然后执行,而存储过程是在大型数据库系统 ...

  6. Java JDBC调用存储过程:无参、输入带参、输出及输出带参

    Java JDBC调用存储过程:无参.输入带参.输出及输出带参 示例代码: package xzg; import java.sql.CallableStatement; import java.sq ...

  7. jdbc调用存储过程的方法

    ----------------------------jdbc调用存储过程的方法---------------------------------------------------private ...

  8. 转:EF调用存储过程、函数

    EF调用存储过程.函数 2014-04-02 09:12:20|  分类: ORM框架|举报|字号 订阅          一.ef4.1 codeFirst 修改表结构 增加字段等 EF code ...

  9. JDBC调用存储过程

    一. JDBC调用存储过程 (1)使用存储过程SQL编写的程序代码,等一段语句和控制流语句.在创建时被编译成机器代码和存储在数据库中的client转让. 存储过程具有以下优势: 1.所生成的机器代码被 ...

随机推荐

  1. linux启动流程及自定义gurb

    linux 启动流程 POST BIOS(boot sequence) 所选择的启动设备次序的MBR中是否有引导程序, ----> MBR(bootloader) 提供内核列表 -------& ...

  2. 如何自定义ReportDesigner的向导界面(WIN)

    https://www.devexpress.com/Support/Center/Example/Details/T140683

  3. RabbitMQ详解

    本文地址:http://www.host900.com/index.php/articles/351/ 介绍RabbitMQ前,有必须先了解一下AMQP协议.AMQP协议是一个高级抽象层消息通信协议, ...

  4. 零配置文件搭建SpringMVC实践纪录

    本篇记录使用纯java代码搭建SpringMVC工程的实践,只是一个demo.再开始之前先热身下,给出SpringMVC调用流程图,讲解的是一个http request请求到达SpringMVC框架后 ...

  5. iOS 调试问题汇总

    // PBXcp error修复-No such file or directory (2013-05-02 15:20:50) 差不多算是Xcode比较常见的一个编译错误了,原因往往是添加或删除美术 ...

  6. 把excel导入的自定义时间改成yyyyMMdd

    public static String changeCellToString(XSSFCell cell){ String result = "";// Object value ...

  7. centos 开机启动服务

    一.启动脚本 /etc/rc.local 启动 最简单的一种方式,在启动脚本 /etc/rc.local (其实 /etc/rc.local 是/etc/rc.d/rc.local 的软链接文件,实际 ...

  8. MyISAM与InnoDB区别

    两种类型最主要的差别就是Innodb 支持事务处理与外键和行级锁.而MyISAM不支持.所以MyISAM往往就容易被人认为只适合在小项目中使用. 我作为使用MySQL的用户角度出发,Innodb和My ...

  9. jquery写的ajax

    1.jsp <%@ page language="java" import="java.util.*" pageEncoding="utf-8& ...

  10. mysql--sqlalchemy.exc.IntegrityError: (IntegrityError) (1215, 'Cannot add foreign key constraint'

    今天在使用mysql时遇到的问题,最后发现问题是,数据类型与外键数据类型不同,改正过来就没有问题了.