我使用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代码
插入日期和小时和分钟答案 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
方法。