JDBC调用存储函数(PL/SQL)
来源:互联网 发布:微店商品导入淘宝店铺 编辑:程序博客网 时间:2024/05/29 04:49
1.简介
本文使用JDBC调用 java,sql.CallableStatement来实现
2.CallableStatement介绍
public interface CallableStatement extends PreparedStatement
(引用API)作用:用于执行 SQL 存储过程的接口。JDBC API 提供了一个存储过程SQL转义语法,该语法允许对所有 RDBMS 使用标准方式调用存储过程。
此转义语法有一个包含结果参数的形式和一个不包含结果参数的形式,如果使用结果参数,则必须将其注册为 OUT 参数。其他参数可用于输入、输出或同时用于二者。
参数是根据编号按顺序引用的,第一个参数的编号是 1
{?= call <procedure-name>[(<arg1>,<arg2>, ...)]} {call <procedure-name>[(<arg1>,<arg2>, ...)]}
3.上代码前介绍:
3.1.环境:数据库Oracle
3.上代码:存储函数的代码:create or replace function add_(v_add1 number,v_add2 number)return numberis v_sum number(3);begin v_sum := v_add1 +v_add2; return v_sum;end;Java代码:
package cn.jdbc;import java.sql.CallableStatement;import java.sql.Connection;import java.sql.SQLException;import java.sql.Types;import org.junit.Test;import cn.jdbc_tools.JDBCTools;/** * CallableStatementDemo基本使用演示 * @author _jon * */public class CallableStatementDemo {@Testpublic void fun(){//求两个数之和的存储函数add_callableStatementfun();}private void callableStatementfun() {//加载驱动//1.得到连接Connection conn =null;CallableStatement callableStatement = null;try{conn = JDBCTools.getOracleConnection();String sql="{?=call add_(?,?)}";//带返回值的是存储函数,没有的是存储过程//2.得到callableStatementcallableStatement = conn.prepareCall(sql);//3.注册OUT参数callableStatement.registerOutParameter(1, Types.NUMERIC);//callableStatement.registerOutParameter(2, Types.NUMERIC);//callableStatement.registerOutParameter(3, Types.NUMERIC);//4.传入的参数:callableStatement.setInt(2, 2);callableStatement.setInt(3, 7);//4.执行callableStatement.execute();//5.得到返回值int sum = callableStatement.getInt(1);System.out.println(sum);}catch(SQLException e){e.printStackTrace();} catch (Exception e) {e.printStackTrace();}finally{JDBCTools.close(null,callableStatement,conn);}}}关于out参数:如果有返回值,那么返回值是out类型,所以要注册callableStatement.registerOutParameter(...);如果是普通参数类型直接调用callableStatement.setInt(...);传参数就可以
1 0
- JDBC调用存储函数(PL/SQL)
- JDBC调用PL/SQL函数
- JDBC调用PL/SQL函数
- jdbc调用pl/sql存储过程
- jdbc的pl/sql的java调用存储过程
- Java,PL/SQL调用 ORACLE存储函数以及存储过程
- PL/SQL存储函数
- 用pl/sql自己编写简单的存储过程及jdbc调用存储过程
- PL/SQL-存储过程、函数
- 【PL/SQL】用SQL调用存储过程
- PL-SQL 存储函数和存储过程
- PL/SQL存储函数,存储过程
- PL/SQL 存储过程和存储函数
- PL/SQL语言&存储过程&存储函数
- 【传智播客郑州校区】Java,PL/SQL调用 ORACLE存储函数以及存储过程
- JDBC:调用函数&存储过程
- pl/sql developer调用存储过程
- JDBC 调用存储函数 存储过程
- ELK环境的搭建
- iOS距离传感器
- 这是一道简单题目,我居然这个都搞错误了,easy,这个可以直接上公式
- Spring MVC 学习笔记 九 json格式的输入和输出
- Nike Free 3.0 Herren max koston will
- JDBC调用存储函数(PL/SQL)
- JS+CSS简单实现DIV遮罩层显示隐藏
- 有关 pullToRefreshListView 的一些使用做一下记录
- C#定时 器 定时执行任务 线程
- c语言写的发送邮件
- spring的@compont和@service以及@controller,@repository区别
- Spring MVC 学习笔记 十 使用jsr 303进行校验
- Linux基础(三)
- systemctl-chkconfig-service