`
wen866595
  • 浏览: 268434 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

JDBC 读取存储过程的多个结果集

    博客分类:
  • java
阅读更多
关于JDBC 读取SQL Server存储过程的多个结果集来生成报表的解决方法,以前的一位同事已解决了,还写了文章发出来,被引用了很多次!只是自己觉得他写的代码比较复杂,意图也不够清晰,所以仔细阅读了jdk的API文档,给出下面的代码,

DBConn = db.connectjdbc(Database);
stmt = DBConn.prepareCall(SQL, ResultSet.TYPE_FORWARD_ONLY, ResultSet.CONCUR_READ_ONLY);
stmt.executeQuery();

do {
	if ((RS = stmt.getResultSet()) != null) {
		while (RS.next()) {
			for (int i = 1; i <= RS.getMetaData().getColumnCount(); i++) {
				sb.append(RS.getString(i));
			}
		}
	}
	// ((stmt.getMoreResults() == false) && (stmt.getUpdateCount() == -1)) 时没有更多结果(API doc)
} while (!(stmt.getMoreResults() == false && stmt.getUpdateCount() == -1));






分享到:
评论

相关推荐

    用JDBC操作Oracle的存储过程返回值

    如果存储过程有结果集返回,可以使用`ResultSet`来获取。 总的来说,使用JDBC操作Oracle的存储过程返回值涉及了JDBC的基本操作,包括加载驱动、建立连接、创建CallableStatement、设置参数、执行存储过程、获取...

    jdbc调用存储过程,函数,游标

    在IT行业中,数据库操作是不可或缺的一部分,而Java的JDBC(Java Database Connectivity)API则提供了与各种数据库交互的...通过阅读提供的博客链接,你将能获取更多关于JDBC调用存储过程和函数的实践经验及详细解释。

    读取jdbc上FTP放置文件

    再者,**文件打包**通常指的是使用归档工具(如ZIP或TAR)将多个文件组合成一个单一的压缩文件,以便于传输和存储。在Java中,可以使用`java.util.zip`包提供的类,如`ZipOutputStream`来实现这个功能。这一步骤在...

    JDBC(lib)驱动包集

    这些连接池管理组件可以预先初始化一定数量的数据库连接,供多个线程共享,从而减少数据库连接的创建和销毁开销。 此外,JDBC驱动包还支持事务管理和异常处理,确保数据的一致性和安全性。在多表操作、复杂查询或大...

    读取txt-jdbc导入百万级数据.rar

    综上所述,"读取txt-jdbc导入百万级数据.rar"是一个涉及数据读取、数据库操作、性能优化等多个技术点的实战案例,对于理解和掌握大规模数据处理有很高的参考价值。通过学习和实践这个案例,开发者可以提升自己在处理...

    groovy将JDBC中oracle存储过程游标转换为多层json

    ### Groovy将JDBC中Oracle存储过程游标转换为多层JSON 在本文档中,我们将探讨如何使用Groovy脚本结合JDBC技术从Oracle存储过程中获取数据,并将其转换为多层JSON格式。该方法特别适用于需要从XML输入中提取数据并...

    Oracle存储过程out游标

    总结一下,Oracle存储过程的Out游标是PL/SQL中返回多行结果的有效方式,Java通过JDBC API可以方便地调用这些存储过程并处理返回的结果集。在实际开发中,这种技术常用于处理复杂的数据查询和更新操作,特别是在需要...

    sqljdbc42 jdbc for java

    SQLJDBC42适用于Java 8及以上版本,支持包括SQL Server 2012、2014、2016及更高版本在内的多个数据库版本。同时,该驱动还具备向后兼容性,可以连接到较旧的SQL Server实例。 三、安装与配置 1. 下载:首先,你...

    spring,配置文件从属性文件读取JDBC连接的相关参数

    例如,如果希望在不同的环境(开发、测试、生产)中使用不同的数据库配置,可以通过指定多个属性文件路径或者优先级来实现。 总之,Spring框架允许我们在不修改代码的情况下,通过外部属性文件动态配置JDBC连接参数...

    jdbc参考手册

    在JDBC中,可以将多个SQL语句组合成一个事务来执行。事务的提交确保了多个操作要么全部成功,要么全部失败,从而保证了数据的一致性和完整性。在JDBC中,可以使用Connection对象的commit()和rollback()方法来提交和...

    非常全面JDBC资源

    3. **批处理**: 多个SQL语句可以一起执行,提高效率,如`stmt.addBatch(sql)`和`stmt.executeBatch();` 4. **数据库元数据**: `DatabaseMetaData`对象提供了关于数据库的结构和能力的信息,如获取表信息、列信息等。...

    Java实现调用MySQL存储过程详解

    首先,确保你已经安装了MySQL数据库,并且在数据库中创建了一个或多个存储过程。例如,`findAllBook`、`pro_test`和`pro_user`都是在`book`数据库中的存储过程。你可以使用MySQL命令行客户端或者可视化工具(如MySQL...

    greenplum数据库jdbc驱动下载

    1. **MPP架构**:Greenplum将数据分布在多个节点上,每个节点都有自己的内存和磁盘资源。查询时,任务被分解并并行执行在各个节点上,提高了处理速度。 2. **自动分区**:Greenplum支持自动分区,可以根据时间、...

    Java调用数据库存储过程[mysql测试通过]

    Java代码创建了一个CallableStatement对象,设置参数并执行存储过程,然后打印出返回的结果。 以上就是关于Java调用MySQL数据库存储过程的基础知识和实践操作,实际应用中可能需要考虑异常处理、连接池管理、多参数...

    SpringJDBC训练素材.zip

    在学习Spring JDBC的过程中,你将深入理解如何设置数据源、事务管理以及如何进行CRUD(创建、读取、更新和删除)操作。 首先,要了解Spring JDBC的基本架构,包括DataSource、JdbcTemplate、SimpleJdbcInsert、...

    JDBC数据库连接测试

    - **CallableStatement**:用于调用数据库存储过程,其方法命名与PreparedStatement类似,但多了`registerOutParameter()`和`getXXX()`方法用于处理存储过程的输出参数。 ### 5. 数据库连接池 在实际开发中,为...

    jdbc连接数据库步骤

    - execute():用于执行返回多个结果集、多个更新计数或二者组合的语句。 5. 执行SQL语句: 使用Statement实例,可以根据需要执行SQL语句。例如查询所有数据: ```java ResultSet rs = stmt.executeQuery(...

    JDBC常见易用的接口和类

    它可以返回一个结果对象,用于存储执行 SQL 语句后的结果。在默认情况下,同一个时间每个 Statement 对象只能打开一个 ResultSet 对象。因此,如果读取一个 ResultSet 与读取另一个交叉,则这两个对象必须是由不同的...

    jdbc访问数据库的步骤

    JDBC提供了诸如查询执行、结果处理、数据库连接管理等功能,使开发人员能够编写出数据库独立的代码。 #### JDBC访问数据库的基本步骤 1. **加载数据库驱动**:首先,你需要加载相应的数据库驱动。这一步通常通过...

Global site tag (gtag.js) - Google Analytics