0

在使用 JDBC 连接时,我正在尝试执行 2 个 SELECT 语句。第一个从表 (SQL_IBGN) 返回单个记录,第二个旨在使用第一个查询中的列 (BGNREF) 从另一个表 (SQL_ITXN) 返回多个记录。

每个查询都有单独的 Statement 和 ResultSet 对象。

查询 1 的代码:

    Statement stmt = con.createStatement();
    String sql = "SELECT BGNREF..... FROM SQL_IBGN WHERE BGNREF LIKE '2306009';";
    ResultSet rs = stmt.executeQuery(sql);
    String bgnref = null;
    while (rs.next()) {
        G1SQL_IBGN g1rec = new G1SQL_IBGN();
        bgnref = rs.getString(1);
        g1rec.setBGNREF(bgnref);
    }

查询 2 的代码:

        if (bgnref != null) {
        Statement stmt1 = con.createStatement();
        String sql1 = "SELECT ACT_DESC...... SQL_ITXN WHERE BGNREF LIKE '"
                + bgnref + "';"; // Execute the SELECT statement ResultSet
        ResultSet rs1 = stmt1.executeQuery(sql1); // Get result of first five records
        while (rs1.next()) {
            G1SQL_ITXN g1itxn = new G1SQL_ITXN();
            g1itxn.setACT_DESC(rs1.getString(1));
        }
    }

第一个查询返回单个记录,但是即使 rs1.next() = true,第二个 while 循环 while (rs1.next()) 也不会执行。

4

0 回答 0