Java ResultSet.next()不检索行

Java ResultSet.next()不检索行,java,derby,resultset,Java,Derby,Resultset,我的代码即将访问我的数据库toursdb并获得一些结果。我正在使用命令行和javadb。当我使用con.getMetaData时,我确实有结果。使用rs.getMetaData时也是如此。我没有连接问题。但我的程序bellow不打印任何内容 // import java.sql.*; class JDBCTest { public static void main(String ... args) { String url = "jdbc:derby://localhos

我的代码即将访问我的数据库toursdb并获得一些结果。我正在使用命令行和javadb。当我使用con.getMetaData时,我确实有结果。使用rs.getMetaData时也是如此。我没有连接问题。但我的程序bellow不打印任何内容

//
import java.sql.*;
class JDBCTest
{
    public static void main(String ... args) {
        String url = "jdbc:derby://localhost:1527/c:/derbytuto/toursdb";
        StringBuilder sb = new StringBuilder();
        String query = "select * from AIRLINES";

        try {
            Connection con = DriverManager.getConnection(url);
            Statement st = con.createStatement();
            ResultSet rs = st.executeQuery(query);

            while(rs.next()) {
                sb.append(rs.getString("AIRLINE") + " ");
                sb.append(rs.getString("AIRLINE_FULL" + "\n");
            }
            System.out.println(sb);
        } catch(SQLException x) {
            x.printStackTrace();
        }
    }
}
//
检索此ResultSet对象的列数、类型和属性。所以,这不能保证表中是否有数据

若您的程序并没有打印任何表示的内容,那个么它就不会进入while循环,这意味着您的查询并没有返回行


您可能已经填充了数据,但您需要提交这些数据,以便将其反映/保存到您的数据库中,否则您将无法在另一个数据库会话中看到数据。

不会帮助@YCF_L。运行“选择查询”时是否有结果?控制台上有stacktrace吗?当您说在元数据中获取结果时,是否有名为airline和airline_full的列?@YCF_L。我习惯使用System.out.printlnsb获取结果。我使用提供的javadb脚本使用数据填充数据库。@1m9K您可能已经填充了数据,但您是否提交了?我错了。我刚刚解雇了java-jar%derby\u home%\lib\derbyrun.jar ij,然后从航空公司解雇了select*,结果一无所获。我的表是空的。@1m9K,如我所说。我重新运行脚本ij>run'loadTables.sql',我发现没有提交;。我自己写的。重新运行我的程序,万岁。非常感谢。