jdbc调用存储过程和函数
2016-08-14 14:02
351 查看
1.调用存储过程
public class CallOracleProc { public static void main(String[] args) throws Exception{ String sql = "{call get_rax(?,?)}"; Connection conn = JdbcUtil.getConnection(); CallableStatement cstmt = conn.prepareCall(sql); //为第一个?号设置值,从1开始 cstmt.setInt(1,7000); //为第二个?注册输出类型 cstmt.registerOutParameter(2,Types.INTEGER); //执行调用过程 cstmt.execute(); //接收过程的返回值,即第二个?号 int rax = cstmt.getInt(2); //显示 System.out.println("7000元需要上交"+rax+"元税收"); cstmt.close(); conn.close(); } }
2.调用函数
public class CallOracleFunc { public static void main(String[] args) throws Exception{ String sql = "{ ? = call findEmpNameAndJobAndSal(?,?,?) }"; Connection conn = JdbcUtil.getConnection(); CallableStatement cstmt = conn.prepareCall(sql); //为第一个?注册输出类型 cstmt.registerOutParameter(1,Types.VARCHAR); //为第二个?注入值 cstmt.setInt(2,7788); //为第三个?注册输出类型 cstmt.registerOutParameter(3,Types.VARCHAR); //为第四个?注册输出类型 cstmt.registerOutParameter(4,Types.INTEGER); //执行函数调用 cstmt.execute(); //分别获取1,3,4占位符的值 String ename = cstmt.getString(1); String job = cstmt.getString(3); int sal = cstmt.getInt(4); //显示 System.out.println("7788--"+ename+"--"+job+"--"+sal); cstmt.close(); conn.close(); } }
相关文章推荐
- JDBC基于MVC架构项目实例-实现对MySQL数据表的增删改查、调用数据表中的存储过程和函数
- java中使用jdbc和mybatis调用数据库中的存储过程和函数
- jdbc调用存储过程和函数
- JDBC调用存储过程和函数
- jdbc调用存储过程和函数
- jdbc调用存储过程和函数
- JDBC(13)—JDBC调用存储过程和函数
- Oracle 存储过程中调用自定义的函数问题?
- ibatis调用oracle的函数,存储过程的方法 IN 和OUT /游标
- IBatis调用ORACLE的存储过程、函数的返回结果集例子
- java调用存储过程(jdbc & hibernate)
- JDBC调用存储过程--有需要的看看
- JDBC调用返回结果集的存储过程
- php调用mysql存储过程和函数的方法
- JAVA调用ORACLE的存储过程、函数的返回结果集例子
- 存储过程或自定义函数调用存储过程的变通实现方法
- 关于JDBC使用命名参数(named parameters)进行存储过程调用的问题
- 运用ORACLE的OO4O类库函数解决调用存储过程向远程数据库上传超过32K图片失败的问题
- PHP调用mysql存储过程和函数的方法
- Oracle复合类型参数的存储过程以及JDBC调用