2008-10-09 81 views

回答

22

Oracle DATE将日期和时间存储到第二个日期和时间。根据可用的硬件,Oracle TIMESTAMP将日期和时间存储为亚秒级精度的9位数字。

这两者都是通过以压缩二进制格式存储日期和时间的各种组件来实现的。来自Oracle Concepts Guide section on dates

Oracle使用自己的内部格式到 存储日期。日期数据存储在 七个字节的固定长度字段中,分别对应于世纪年, 月,日,小时,分钟和秒。

可以使用DUMP()函数来查看任何特定日期(或与此有关的任何其他值)的内部表示,但是这可能比你更需要(或希望)就知道了。

+1

感谢,特别是对一个dump()函数:) – 2008-10-09 14:36:44

1

编号日期是一个时间戳值与秒精度。您需要TIMESTAMP(3)来存储毫秒。

+0

为了清楚:Oracle时间戳不会存储毫秒。它以可配置的精度存储几分之一秒 - 最多9个小数位。如果你使用时间戳(3),那么你有毫秒。如果你使用时间戳(6),你有微秒。时间戳(9)?纳秒。 – JeeBee 2008-10-09 14:31:24