Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/316.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 ojdbc 6 getInt()的列号返回错误的值_Java_Oracle11g_Ojdbc - Fatal编程技术网

java ojdbc 6 getInt()的列号返回错误的值

java ojdbc 6 getInt()的列号返回错误的值,java,oracle11g,ojdbc,Java,Oracle11g,Ojdbc,我从ojdbc getInt()中得到了一个非常有趣的错误,其列号为 ps = conn.prepareStatement("select count(*) from tableA"); rs = ps.executeQuery(); int x; if (rs.next()) x = rs.getInt(1); ps = conn.prepareStatement("select count(*) as someVariable from tableA"); rs = ps.exec

我从ojdbc getInt()中得到了一个非常有趣的错误,其列号为

ps = conn.prepareStatement("select count(*) from tableA");
rs = ps.executeQuery();
int x;
if (rs.next())
    x = rs.getInt(1);

ps = conn.prepareStatement("select count(*) as someVariable from tableA");
rs = ps.executeQuery();
int y;
if (rs.next())
    y = rs.getInt(1);
x和y的值是不同的。y是我期望的正确数字

我将Java7与ojdbc6.jar(11.2.0.3.0)一起使用

谢谢

ps = conn.prepareStatement("select count(*) as someVariable from tableA");
ps = conn.prepareStatement("select count(*) as result from tableA");
rs = ps.executeQuery();
int x;
if (rs.next())
    x = rs.getInt("result");

ps = conn.prepareStatement("select count(*) as someVariable from tableA");
rs = ps.executeQuery();
int y;
if (rs.next())
    y = rs.getInt("someVariable");
难道你没有忘记rs.close()、conn.close()、statement.close()吗?你最好利用资源去尝试,而不仅仅是去尝试

try(Connection con = DriverManager.getConnection("DBpath","usr","pswd")) {
    //doSomething
}
在这种情况下,您不需要关闭它们,它们会自动关闭。 注意:只能对可关闭的对象执行此操作

难道你没有忘记rs.close()、conn.close()、statement.close()吗?你最好利用资源去尝试,而不仅仅是去尝试

try(Connection con = DriverManager.getConnection("DBpath","usr","pswd")) {
    //doSomething
}
在这种情况下,您不需要关闭它们,它们会自动关闭。
注意:您只能对可关闭的对象执行此操作。

这似乎不太可能。它是同一个conn(即同一个会话;或者至少是同一个DB和凭据,其间没有数据更改)?你是在初始化x和y吗,如果是的话,是为了什么,这和你最终得到的x值有什么相似之处吗?在您检查x之前,可能会有修改x的代码吗?可能有用,而不是部分代码段。x和y的初始值为0,并且都连接到同一凭据。两者都是分开运行的,这似乎不太可能。它是同一个conn(即同一个会话;或者至少是同一个DB和凭据,其间没有数据更改)?你是在初始化x和y吗,如果是的话,是为了什么,这和你最终得到的x值有什么相似之处吗?在您检查x之前,可能会有修改x的代码吗?可能有用,而不是部分代码段。x和y的初始值为0,并且都连接到同一凭据。两者都是分开运行的。