`

使用CallableStatement处理Oracle数据库的存储过程

 
阅读更多

使用CallableStatement处理Oracle数据库的存储过程:
1.预处理SQL语句;
2.使用registerOutParameter方法注册变量数据类型;
3.为每一个“?”赋值;
4.执行操作。


实例:
TestProc.java:

01.importjava.sql.*;
02.
03.publicclassTestProc{
04.
05.publicstaticvoidmain(String[]args){
06.Connectionconn=null;
07.CallableStatementcstmt=null;
08.try{
09.Class.forName("oracle.jdbc.driver.OracleDriver");
10.conn=DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:mgc","system","admin");
11.Stringsql="{call my_pro_name(?,?,?,?)}";
12.cstmt=conn.prepareCall(sql);
13.cstmt.registerOutParameter(3,Types.INTEGER);
14.cstmt.registerOutParameter(4,Types.INTEGER);
15.cstmt.setInt(1,6);
16.cstmt.setInt(2,4);
17.cstmt.setInt(4,0);
18.cstmt.execute();
19.System.out.println(cstmt.getInt(3));
20.System.out.println(cstmt.getInt(4));
21.}catch(ClassNotFoundExceptione){
22.e.printStackTrace();
23.}catch(SQLExceptione){
24.e.printStackTrace();
25.}finally{
26.try{
27.if(cstmt!=null){
28.cstmt.close();
29.cstmt=null;
30.}
31.if(conn!=null){
32.conn.close();
33.conn=null;
34.}
35.}catch(SQLExceptione){
36.e.printStackTrace();
37.}
38.}
39.}
40.
41.}


proc.sql:
01.createorreplaceproceduremy_pro_name
02.(v_ainnumber,v_bnumber,v_retoutnumber,v_tmpinoutnumber)
03.is
04.begin
05.if(v_a>v_b)then
06.v_ret:=v_a;
07.else
08.v_ret:=v_b;
09.endif;
10.v_tmp:=v_tmp+1;
11.end;
12./
分享到:
评论

相关推荐

    jdbc连接oracle,执行存储过程,带数据库存储过程

    本篇将详细介绍如何使用JDBC连接Oracle数据库并执行存储过程。 首先,我们需要理解JDBC的基本概念。JDBC是Java平台的标准API,它允许Java程序与各种数据库进行通信。通过JDBC,我们可以创建数据库连接、发送SQL语句...

    oracle 数据库 plsql 存储过程

    ### Oracle数据库PL/SQL存储过程详解 #### 一、存储过程概述 **Oracle存储过程**是一种可以在Oracle数据库中存储并可被多次调用的PL/SQL代码块。它由一系列的PL/SQL语句组成,可以包含控制流程、变量声明等,能够...

    CallableStatement调用Oracle存储过程返回结果集(ResultSet).doc

    在本节中,我们通过一个具体的例子来详细介绍如何使用`CallableStatement`来调用Oracle数据库中的无返回值存储过程,并执行插入操作。 ##### 存储过程定义 首先,我们需要创建一个简单的存储过程`PRO_1`,该存储...

    oracle存储过程学习经典入门

    用 Java 调用 Oracle 存储过程时,需要使用 JDBC 驱动程序来连接 Oracle 数据库,然后使用 CallableStatement 对象来调用存储过程。 在存储过程中做简单动态查询 在存储过程中,做简单动态查询需要使用 EXECUTE ...

    Hibernata调用Oracle数据库存储过程的一个小例子

    本篇文章将深入探讨如何使用Hibernate这个流行的Java ORM框架来调用Oracle数据库中的存储过程,以此为实例进行详细讲解。 Hibernate是一个强大的工具,它简化了Java应用程序与数据库之间的数据交换。它允许开发者...

    CallableStatement调用Oracle存储过程返回结果集(ResultSet).pdf

    在Oracle数据库中,存储过程可以接收输入参数、输出参数或两者都有,并且可能返回结果集。本篇将详细阐述如何使用CallableStatement调用Oracle存储过程并处理返回的结果集。 一、无返回值的存储过程 对于无返回值...

    java实现增删改查使用Oracle数据库

    Oracle数据库提供了一些特有的函数和特性,例如游标、存储过程、触发器等。在Java中,可以调用CallableStatement来执行存储过程。 八、最佳实践 1. 使用PreparedStatement而非Statement,提高性能和安全性。 2. ...

    使用Java操作oracle数据库

    本节将深入探讨如何使用Java来操作Oracle数据库,特别是调用存储过程。 首先,我们需要了解JDBC的基本概念。JDBC是Java平台的标准接口,它允许Java程序连接到各种类型的数据库,包括Oracle。在Java中,我们通常通过...

    CallableStatement调用Oracle存储过程返回结果集(ResultSet).docx

    Oracle数据库是广泛使用的数据库系统,它支持存储过程的创建和调用。本篇将详细介绍如何使用CallableStatement调用Oracle存储过程,并处理返回的结果集(ResultSet)。 一、无返回值的存储过程 在Oracle中,一个无...

    JAVA WEB 项目 Oracle数据库技术

    在JAVA WEB项目开发中,Oracle数据库技术扮演着至关重要的角色,它是存储和管理应用程序数据的主要平台。Oracle数据库是世界上最广泛使用的数据库系统之一,尤其在企业级应用中深受青睐。本教程将深入探讨如何在JAVA...

    Oracle存储过程返回结果集

    在Oracle数据库中,存储过程是一种预编译的SQL和PL/SQL代码集合,可以执行复杂的业务逻辑或数据处理任务。当需要从存储过程中返回多个结果时,通常会使用结果集。本篇将深入探讨如何在Oracle存储过程中创建并返回一...

    Java链接Oracle 存储过程 jdbc BLOG

    本文将深入探讨如何使用JDBC(Java Database Connectivity)API来调用Oracle数据库的存储过程。 首先,确保你的项目中已经包含了Oracle JDBC驱动,通常为ojdbc.jar或ojdbc6.jar。这个驱动允许Java应用程序与Oracle...

    调用Oracle的存储过程

    本主题将深入探讨如何使用Java编程语言调用Oracle数据库中的存储过程,这是一个常见的需求,尤其在需要进行复杂业务逻辑处理时。下面我们将详细讨论相关知识点。 首先,存储过程是数据库中预编译的一组SQL语句,...

    Spring jdbcTemplate调用Oracle存储过程返回List集合

    我们使用 `CallableStatementCallback` 接口来处理存储过程的调用结果。在 `doInCallableStatement` 方法中,我们注册了输出参数,并执行了存储过程。然后,我们使用 `ResultSet` 对象来获取结果集,并将其转换为 ...

    oracle数据库的clob大字段在jdbc中的处理方式

    另外,如果需要更新CLOB字段,可以使用`CallableStatement`和存储过程来完成。 总之,理解和掌握CLOB在JDBC中的处理方式是开发与Oracle数据库交互的应用程序时的重要技能,尤其是当处理大量文本数据时。确保高效、...

    Spring JdbcTemplate调用Oracle存储过程实现CRUD

    我们使用 `CallableStatement` 对象调用存储过程,并使用 `ResultSet` 对象处理结果集。 对于 `P_EMP_SELECT` 存储过程,我们使用 `CallableStatementCallback` 对象调用存储过程,并将结果集处理到 `List` 集合中...

    通过JDBC连接Oracle数据库的十大技巧

    选择合适的驱动程序、关闭自动提交、使用PreparedStatement对象、批量处理、调用存储过程以及优化连接池等策略,都是提高Java应用程序与Oracle数据库交互性能的有效手段。同时,定期对系统进行性能监控和调优,是...

    一些常用数据库存储过程

    本文将详细介绍如何在Oracle数据库中创建和使用存储过程,并附带介绍其他几种常见数据库系统的连接方式。 #### Oracle 数据库存储过程 Oracle数据库是目前企业级应用中广泛使用的数据库系统之一。以下内容基于...

    hibernate query调用oracle存储过程

    Oracle数据库作为企业级的主流数据库系统,提供了丰富的存储过程和函数功能,以实现复杂的数据处理逻辑。而Hibernate作为一种流行的Java持久化框架,它允许开发者通过ORM(对象关系映射)方式与数据库进行交互。本篇...

    用callabledStatement调用oracle存储过程实用例子(IN OUT 传游标)

    Oracle 存储过程是一种可以在 Oracle 数据库中存储和执行的程序单元。存储过程可以由多种语言编写,例如 PL/SQL、Java 等。存储过程可以封装复杂的业务逻辑,提高数据库的安全性和性能。 二、CallabledStatement ...

Global site tag (gtag.js) - Google Analytics