Oracle截断日期的时间部分

时间:2015-09-16 06:04:17

标签: java oracle date oracle11g

在我的Java应用程序中,我必须使用对象创建的日期和时间将数据保存到Oracle 11g,为此我将java.util.Date()转换为java.sql.Date(),格式为new java.sql.Date(new java.util.Date().getTime())。但是我注意到,在插入数据之后,oracle截断了日期的时间部分,我得到了类似 16/09/2015 的内容。但我需要这样的格式: 16/09/2015 9:55:44 。 oracle的sysdate()过程创建的第二种格式。我如何从java代码中获取第二种格式?

3 个答案:

答案 0 :(得分:3)

从内存(它已经有一段时间),java.sql.Date仅用于保存日期(没有时间),如果您还需要时间信息,则需要使用java.sql.TimeStamp代替

答案 1 :(得分:1)

如果要存储日期时间,请不要使用java.sql.Date。只需使用java.util.Date而无需任何转化。简单易行。也不需要java.sql.TimeStamp

并确保您的NLS设置(例如在SQL Developer中)显示日期和时间,因为Oracle不区分有和没有时间的日期。

答案 2 :(得分:0)

我猜Oracle不会截断。例如,如果您使用Oracle SQL Developer,则必须更新NLS参数" Date Format"看时间。

默认情况下,它只等于" DD-MON-RR"

enter image description here