从oracle一分钟插入并提取小时

时间:2014-05-09 22:50:52

标签: java sql

我使用oracle

我想插入包含小时和分钟的数据

我有这一栏: DATE_ARCH

此列的类型为日期

我有这个java代码,应该在这个列中插入日期

 transfers.setDateArch(new java.sql.Date(
                        System.currentTimeMillis()));

但是当我尝试从 DATE_ARCH

中提取小时和分钟时

使用这个sql代码:

select to_char(transfers.DATE_ARCH , 'HH:MM') from transfers where id_transfer='TR-300'

我有时间这个值:

12:05

已更新

我尝试使用此代码:

Timestamp t = new Timestamp(new Date().getTime());

                transfers.setDateArch(t);

我尝试使用以下代码提取小时和分钟:

select to_char(transfers.DATE_ARCH , 'HH24:MI') from transfers where id_transfer='TR-258'

但我在所有情况下都有这个值:

00:00

我已经说过 DATE_ARCH 的类型是日期

当我在sql中尝试:

  UPDATE transfers SET DATE_ARCH = SYSDATE

使用

我有正确的值
 select to_char(transfers.DATE_ARCH , 'HH24:MI') from transfers where id_transfer='TR-258'

现在我想知道如何使用java代码

插入日期和小时和分钟

1 个答案:

答案 0 :(得分:1)

你是对的。我不太了解Oracle的java接口知道正确的解决方案。但是,您的解决方案是立即插入日期。表达式:

to_char(transfers.DATE_ARCH , 'HH:MM')

正在回归" 12"因为那是午夜和" 05"因为是五月分钟的正确表达式是:

to_char(transfers.DATE_ARCH , 'HH:MI')

以及24小时制:

to_char(transfers.DATE_ARCH , 'HH24:MI')

我不知道如何修复java代码。但也许你可以使用DateTime方法。