Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/379.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java ResultSet.next始终为false,已填充表格_Java_Sql_Oracle_Jdbc_Resultset - Fatal编程技术网

Java ResultSet.next始终为false,已填充表格

Java ResultSet.next始终为false,已填充表格,java,sql,oracle,jdbc,resultset,Java,Sql,Oracle,Jdbc,Resultset,我的桌子: create table ranking (rennId int not null, fId int not null, pos int not null, CONSTRAINT key PRIMARY KEY (rennId,fId)) 我的java代码: try { Connection con = DriverManager.getConnection(url, user, password); ResultSet ret = con.createStatem

我的桌子:

create table ranking (rennId int not null, fId int not null, pos int not null, CONSTRAINT key PRIMARY KEY (rennId,fId))
我的java代码:

try {
    Connection con = DriverManager.getConnection(url, user, password);
    ResultSet ret = con.createStatement().executeQuery("select * from ranking");
    while (ret.next())
        System.out.println("test");
} catch (SQLException e) { e.printStackTrace(); }   
手动测试:

sql> select * from ranking
[2017-06-13 03:21:59] 3 rows retrieved starting from 1 in 52ms (execution: 45ms, fetching: 7ms)
作为独立测试

仅出现在该表上

显然,这是与DataGrip相结合的问题。 这段代码实际上会选择在此应用程序中创建的所有条目,但会忽略通过DataGrip创建的所有条目。
似乎与组合主键有关

我认为这是try与resources的约定,以保证在表达式完成执行后关闭try子句中指定的资源。我相信结果集也会在try块的末尾被关闭,因此调用next()返回false,因为没有任何错误there@user7790438但是结果上的循环完全在
try
块内。为什么您希望在此时关闭任何资源?create query和select query中的表的名称是否有不同的用途?@SHG对不起,复制粘贴失败,它们是same@user7790438接下来,一个封闭的结果会抛出一个错误,即使它真的被测试了,这里的情况并非如此