比较查询中的 oracle 日期时间失败并且 returns 没有记录

comparing oracle date time in query fails and returns no records

我是 oracle 的新手,在选择记录时比较日期时遇到了愚蠢的问题。

我的 tableX 中有一个名为 req_datetime 的字段,声明为 DATE

类型

在插入记录时,我只是使用下面的 java 格式,并且日期插入得很好。

SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("dd-MM-yyy HH:mm:ss");

虽然我 运行 下面从 sql 开发人员查询它没有 return 任何记录,但看起来在比较日期时有一些问题 format.I 已尝试许多日期格式,其中 none 有效。

我注意到一件事,如果我使用 sql 开发人员手动打开 table 并立即重置日期,那么查询将 return 只有我拥有的行使用 sql 开发人员更改了日期。

这是我的 sql 查询

SELECT * from tableX Where cardno='xyzzz' AND req_datetime >=TO_DATE('11/Jan/2016 00:00:00','dd/mon/yyyy HH24:MI:SS')  ORDER BY req_datetime ASC

需要您的帮助。谢谢 更新图片:

为什么不直接用 TO_DATE 插入呢?例如:

String sql = "INSERT INTO table x (req_datetime, ....) VALUES "
      + "(to_date('"+ getCurrentTimeStamp()+ "', 'yyyy/mm/dd hh24:mi:ss'), ...)";

private static String getCurrentTimeStamp() {
    DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
    java.util.Date today = new java.util.Date();
    return dateFormat.format(today.getTime());
}