java - 如何在 Java 中加入 ResultSet 对象?

标签 java oracle

我有两个连接。

Connection cone = ... // to DB2
Statement statement = cone.createStatement();
ResultSet resultSet1 = statement.executeQuery("select * from tableone");

Connection ctwo = ... // to Teradata
Statement statement = ctwo .createStatement();
ResultSet resultSet2 = statement.executeQuery("select * from tabletwo"); 

如何连接这两个表?


到目前为止,我正在使用 opencsv API 将上述结果集写入 csv。然后操作这两个csv文件。我确信我的方法远非理想,它需要时间而且效率不高

必须有一个有效的解决方案。毕竟这两个结果集都是java对象。必须有一种无需第三方 API 即可加入他们的方法

最佳答案

如果两个模式一致,您可以为两个 ResultSet 的每一行创建相同的对象,并将它们全部放在一个 List 中。

例如,

List<T> results = new ArrayList<T>();
while(resultSet1.next()) {
    // retrieve fields here...
    results.add(new T(...fields...));
}

while(resultSet2.next()) {
    // retrieve fields here...
    results.add(new T(...fields...));
}

关于java - 如何在 Java 中加入 ResultSet 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22368107/

相关文章:

java - 用于 Windows 应用程序自动化的良好 Java 库

sql - 使用 SQL 在 Oracle 模式之间复制数据

oracle - 条件编译 PL/SQL

java - 处理 ByteToMessageDecoder 中的异常

java - 带反射的 TypeLiteral 注入(inject)

java - 有没有办法打印所有速度上下文?

sql - 列别名被截断

java - 在 Maven 中安装 JDBC 驱动程序时出错

oracle - Tuxedo Client 12崩溃

java - 如何告诉 Maven 在本地哪里搜索父 POM?