【问题标题】:How to use two excel sheet to read data in java using JDBC-ODBC?java - 如何使用两个excel表通过JDBC-ODBC读取java中的数据?
【发布时间】:2012-12-01 22:10:10
【问题描述】:

我想使用 JDBC 从两个 Excel 表中读取数据。所以我为两张excel表设置了两个数据源(系统DSN名称)。现在我可以从一张excel表中读取数据了吗?但是如何连接第二个excel表?

请看下面的代码从一个excel表中读取数据。但是如何在第二个连接中使用第二个数据源名称?能否请教。

public class MergeXSLFiles {

public static Connection getConnection() throws Exception {
String driver = "sun.jdbc.odbc.JdbcOdbcDriver";
String url = "jdbc:odbc:Report";
String username = "";
String password = "";
Class.forName(driver);
return DriverManager.getConnection(url, username, password);
}

public static void main(String args[]) throws Exception {
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;

conn = getConnection();
stmt = conn.createStatement();
String excelQuery = "select * from [Sheet$]";
rs = stmt.executeQuery(excelQuery);

while (rs.next()) {
  System.out.println(rs.getString("name") + " " + rs.getString("age"));
}

rs.close();
stmt.close();
conn.close();
}
}

感谢您的帮助。

【问题讨论】:

    标签: java excel


    【解决方案1】:
    String excelQuery = "select * from [Sheet$]1";
    String excelQuery2 = "select * from [Sheet$]2";
    rs = stmt.executeQuery(excelQuery);
    
    while (rs.next()) {
      System.out.println(rs.getString("name") + " " + rs.getString("age"));
    }
    rs = stmt.executeQuery(excelQuery2);
    while (rs.next()) {
      System.out.println(rs.getString("name") + " " + rs.getString("age"));
    }
    

    只需执行另一个查询即可从下一张表中获取结果

    【讨论】:

    • 我们可以在这里使用连接查询吗?比如 select a.name,a.age,b.empno from [sheet1$] a,[sheet2$] b ?
    • 是的,您可以使用 join 使用单个查询从两个工作表中获取数据
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-12
    • 2013-05-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多