java中执行存储过程
package com.etong.util;
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
public class T3 {
public static void main(String[] args) throws InstantiationException, IllegalAccessException, ClassNotFoundException, SQLException {
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
// DriverManager.registerDriver(new net.sourceforge.jtds.jdbc.Driver());
String dbUrl = "jdbc:microsoft:sqlserver://localhost:1433;Databasename=rhsys";
Connection conn = java.sql.DriverManager.getConnection(dbUrl,"sa","sa");
String sql="{call testProc(?)}";
CallableStatement cs=conn.prepareCall(sql);
cs.setString(1,"1039");
//cs.registerOutParameter(2,Types.INTEGER);
ResultSet rs = cs.executeQuery();
int k= rs.getMetaData().getColumnCount();
// System.out.println(cs.getObject(2));
// ResultSet rs = (ResultSet)cs.getObject(2);
while (rs.next()){
for (int i=1;i<k+1;i++){
System.out.print(rs.getObject(i)+"|");
}
System.out.println();
}
cs.close();
conn.close();
}
}
分享到:
相关推荐
在这个例子中,我们创建了一个`CallableStatement`实例,设置参数值,然后执行存储过程。执行后,我们从结果集中获取并处理数据。 值得注意的是,上述代码中的文件名列表(如Project1.cfg、Unit1.dcu等)与Java调用...
如果存储过程中有输出参数,则需要使用`registerOutParameter`方法注册输出参数,然后通过`getXXX`系列方法获取输出参数的值。 示例代码: ```java // 假设存储过程中的输出参数为整型 cstmt.registerOutParameter...
总的来说,Java通过JDBC调用MySQL存储过程涉及到连接数据库、创建`CallableStatement`、执行存储过程和处理结果。这使得开发者能够在Java应用中灵活地利用数据库提供的强大功能,实现更高效的数据处理。
`OUT`参数是存储过程中的一种特殊参数类型,用于将结果传出存储过程,供调用者使用。 Java中调用存储过程主要通过JDBC(Java Database Connectivity)接口实现。以下是一步步的操作步骤: 1. **加载数据库驱动**:...
调用`CallableStatement`的`execute()`方法执行存储过程。 7. **获取结果**: 如果存储过程有输出参数或返回结果集,可以使用`CallableStatement`的`getString()`, `getInt()`等方法获取结果。 8. **关闭资源**...
执行存储过程后,通过`getString`方法获取输出参数的值。 ##### (三)返回多个值的存储过程 最后创建一个名为`sp_test2`的存储过程,该过程用于根据书籍ID查询书名和出版社名称,并将这两个结果作为输出参数返回...
这里需要设置输入参数,执行存储过程,并获取输出参数: ```java CallableStatement cs = conn.prepareCall("{ call get_users_by_age(?, ?) }"); cs.setInt(1, someAge); // 设置输入参数 cs.registerOutParameter...
5. **执行存储过程**:调用`CallableStatement`的`execute()`方法执行存储过程: ```java cs.execute(); ``` 6. **获取结果**:如果是查询型存储过程,可以使用`ResultSet`获取结果;如果是有输出参数的存储过程...
### Java调用存储过程——传入集合参数:深入解析与实践 #### 核心知识点概览 在Java应用中,调用数据库存储过程时,往往需要处理复杂的参数传递,特别是当参数为集合类型时,这一过程变得更加具有挑战性。本文将...
Java代码创建了一个CallableStatement对象,设置参数并执行存储过程,然后打印出返回的结果。 以上就是关于Java调用MySQL数据库存储过程的基础知识和实践操作,实际应用中可能需要考虑异常处理、连接池管理、多参数...
5. **执行存储过程**:调用`CallableStatement`的`execute()`方法执行存储过程。 ```java cs.execute(); ``` 6. **处理结果**:如果存储过程返回结果集,你可以通过`ResultSet`来获取数据。 ```java ResultSet rs...
最后,执行存储过程: ```java cs.execute(); ``` 三、带有输入参数的存储过程 在 DB2 中,可以创建带有输入参数的存储过程。例如,创建一个带有输入参数的存储过程可以使用以下语句: ```sql CREATE PROCEDURE in...
通过设置输入参数,调用 `executeUpdate` 方法执行存储过程。最后,关闭资源。 #### 三、有返回值的存储过程 ##### 1. 创建存储过程 对于返回单个值的情况,可以创建如下存储过程 `selemp_sal`: ```sql CREATE OR ...
4. 执行存储过程:调用`CallableStatement.execute()`方法执行存储过程。 5. 获取结果:如果是查询操作,可以使用`ResultSet`处理结果;如果是非查询操作,可以通过`CallableStatement`的`getXXX()`方法获取输出参数...
本篇将详细介绍如何使用JDBC连接Oracle数据库并执行存储过程。 首先,我们需要理解JDBC的基本概念。JDBC是Java平台的标准API,它允许Java程序与各种数据库进行通信。通过JDBC,我们可以创建数据库连接、发送SQL语句...
在IT领域,特别是数据库操作与Java编程的交集部分,调用存储过程是常见的需求之一。...通过正确设置参数、执行存储过程并管理资源,可以在Java应用中充分利用存储过程的功能,从而提高应用的性能和可维护性。
在Java中调用不返回结果集的存储过程时,主要步骤包括建立连接、准备调用语句、设置输入参数、执行存储过程以及处理可能产生的警告信息。 1. **建立连接**:使用`ConnectionHelper.getConnection()`方法获取到`...
- **设置参数**:存储过程中的参数可以通过`registerOutParameter()`或`setXXX()`方法来设定。`registerOutParameter()`用于设置输出参数,而`setXXX()`用于设置输入参数。例如,如果存储过程有一个输入参数和一个...
4. **执行存储过程** 一旦所有参数设置好并注册完毕,就可以执行存储过程了。使用`executeQuery`或`executeUpdate`方法,具体取决于存储过程是否返回结果集。对于无结果集的存储过程,`executeUpdate`更为合适。 ...