我有一个java项目,我需要获取没有设置日期的行数(Oracle表中这些行的日期为空)。
该项目使用Oracle jdbc 6(ojdbc6.jar)在Java 6中。
Statement statement = null;
String query = " select count(*) thesum from jobview where starteddate is null";
statement = con.createStatement();
ResultSet resultSet = statement.executeQuery(query);
if(resultSet.next()) {
workCount = new Integer(resultSet.getInt("thesum"));
}
现在,问题是workCount始终为0.
如果我在SQLDeveloper中运行相同的查询,它会返回一个结果,其中包含initialdate的行数与预期值(意味着不是0)。
我在这里缺少什么,或者是否有一些知道oracle驱动程序或我的java版本(build 1.6.0_29)的bug,这是一个项目限制......
答案 0 :(得分:0)
我们的开发环境是使用 Ubuntu 12.04 Lts 通过 VMware Player免费版本 5.0.2-1031769 和 6.0建立的.1-1379776 即可。两人都表现出这个错误。
我们将 VMware Player免费与 VMware Workstation 许可版交换,现在它可以正常运行。所以这个问题似乎与虚拟化软件,操作系统和java(jdbc驱动程序)的组合有关。我希望有其他人遇到同样的问题找到这篇文章,这样可以为他们节省很多时间,并试图调试这个问题。