`
housen1987
  • 浏览: 345348 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

存储过程返回多个结果集

阅读更多

对于查询试的存储过程,一般会返回一个结果集,这个时候,使用正常的查询操作即可得到结果集,可是,面对下面的一次返回多个结果集的过程,又该如何通过JDBC获取呢?

 

其实,只需要多加一步操作就可以了。

JDBC的PreparedStatement可以返回多个结果集,但是ResultSet一次却只能接受一个结果集,只需要再判断PreparedStatement对象的getMoreResults()是否为真,然后再获取一次结果集,即可得到第二、第三……个结果集。

代码实现如下(Sybase IQ版本):

 

ps = conn.prepareStatement(sql);
ps.getMoreResults();
rs  = ps.executeQuery();

while(rs.next()){
	System.out.println(rs.getString(1));
}
if(ps.getMoreResults()){
	rs = ps.getResultSet();
}
while(rs.next()){
	System.out.println(rs.getString(1));
}
0
4
分享到:
评论

相关推荐

    mysql存储过程之返回多个值的方法示例

    在本示例中,我们将探讨如何通过存储过程返回多个值,并且结合PHP进行调用。 首先,我们要明白在MySQL中,存储函数只能返回一个单一的值,而存储过程则可以处理更复杂的情况,包括返回多个值。要实现这一功能,我们...

    Oracle 返回多个结果集

    在Oracle数据库中,返回多个结果集是一个常见的需求,特别是在处理复杂的查询或存储过程时。一个结果集通常对应于SQL查询的执行结果,但有时我们可能需要在一个操作中获取并处理多个独立的结果集。这就涉及到了...

    Oracle存储过程返回结果集

    当需要从存储过程中返回多个结果时,通常会使用结果集。本篇将深入探讨如何在Oracle存储过程中创建并返回一个结果集,并结合Java代码展示如何在应用程序中使用这个结果集。 首先,我们需要理解`OUT`参数的概念。在...

    Delphi中调用oracle的存储过程返回数据集

    Delphi 中调用 Oracle 的存储过程返回数据集是指在 Delphi 应用程序中调用 Oracle 数据库中的存储过程,并将存储过程的返回结果集显示在 Delphi 应用程序中。这种方式可以将 Oracle 数据库中的数据实时同步到 Delphi...

    thinkphp调用sqlserver储存过程返回多个结果集

    【ThinkPHP调用SQLServer储存过程返回多个结果集】 在ThinkPHP框架中,调用SQLServer的储存过程并处理返回的多个结果集是一项常见的任务,特别是在处理复杂的业务逻辑时。以下将详细介绍如何进行操作。 首先,确保...

    birt调用存储过程

    - **调用返回多个结果集的存储过程**:如果存储过程返回多个结果集,BIRT会自动处理并分别显示每个结果集。 6. **参考文档和资源** 为了更深入地了解BIRT调用存储过程,可以查阅官方文档和其他在线资源,例如提供...

    LINQ TO SQL 存储过程-返回结果集

    在 LINQ to SQL 中,当存储过程可以返回多个结果形状时,返回类型无法强类型化为单个投影形状。虽然 LINQ to SQL 可以生成所有可能的投影类型,但它无法获知将以何种顺序返回结果集。 因此,在使用 LINQ to SQL ...

    JAVA调用存储过程

    5. **处理多结果集**:如果存储过程返回多个结果集,可以使用`getMoreResults`方法判断是否存在更多的结果集,并继续获取和处理。 ```java ResultSet resultSet2; if (callableStatement.getMoreResults()) { ...

    mybatis调用存储过程源码

    - 有时存储过程返回多个结果集,这时需要在Mapper XML中使用`<resultMap>`标签来处理。 这个提供的"mybatis调用存储过程源码"压缩包,包含了一个完整的MyBatis调用存储过程的示例,解压后可以直接运行,帮助开发者...

    Java对存储过程的调用方法

    如果存储过程返回多个结果集,可以使用`getMoreResults()`来遍历。 4. **事务管理**:在调用存储过程时,通常会涉及到数据库事务。可以使用`Connection`对象的`setAutoCommit()`方法来控制自动提交,或者使用`...

    NET中如何使用存储过程

    如果存储过程返回多个结果集,需要通过循环`SqlDataReader`来处理每个结果集。 4. **事务和错误处理**: 在调用存储过程时,你可能需要处理事务以确保数据的一致性。这可以通过在`SqlConnection`对象上设置`...

    java调用存储过程同时返回值和多个table

    java调用存储过程,支持获取return值,output返回值,以及查询的表数据,表数据允许有多个查询结果集

    执行Sqlserver存储过程返回DataSet

    本文详细介绍了如何在C#中执行SQL Server的存储过程并将结果集返回为一个`DataSet`对象的过程。此外,还提供了使用PostgreSQL数据库的扩展案例,进一步展示了如何处理不同数据库类型的情况。这些技术对于实现高效、...

    delphi如何调用sql存储过程,并获取结果

    在Delphi中调用SQL存储过程并获取结果是数据库编程中的一个重要环节。下面将通过给定的代码示例,详细解析Delphi如何调用SQL存储过程,并获取执行结果。 ### Delphi调用SQL存储过程的基本步骤 #### 1. 准备工作 ...

    Oracl返回多个结果集

    它允许存储过程返回一个或多个结果集,并且可以在客户端应用程序中通过执行存储过程来获取这些结果集。与普通游标不同的是,REFCURSOR可以被传递并在外部使用。 #### 三、创建存储过程以返回多个结果集 以下是一个...

    Hibernate 调用存储过程

    如果存储过程返回多个结果集,Hibernate只会处理第一个结果集,其他结果集会被忽略。 2. **调用语法**:调用存储过程时,可以使用`{?=call selectAllUsers()}`或简化为`{call selectAllUsers()}`。 3. **非查询...

    LINQ to SQL语句(20)之存储过程

    若存储过程返回多个结果集,每个结果集会被映射为一个单独的对象集合。可以使用 `ExecuteMethodCall` 方法来手动处理这种情况,如下: ```csharp var resultSets = db.ExecuteMethodCall(() => db....

    用java调用oracle存储过程总结.pdf

    在Java编程中,调用Oracle数据库的存储过程是常见的任务,尤其在处理复杂业务...此外,如果存储过程返回多个结果集或游标,可以使用`ResultSet`来处理。总的来说,理解并熟练运用这些技巧对Java开发者来说至关重要。

    JAVA 运用存储过程的分页

    在实际应用中,你可能会遇到更复杂的情况,比如需要处理多表联查,或者存储过程返回多个结果集。这时,你可以调整存储过程的逻辑,并在Java代码中进行相应处理。 在分页查询时,通常还会涉及到排序,可以通过在存储...

Global site tag (gtag.js) - Google Analytics