不,您没有任何保证……无论发生什么,甲骨文都将存储现在是午夜的事实。你不能存储没有时间的日期。
如果您创建下表:
create table a ( dt date);
insert into a values(sysdate);
insert into a values(trunc(sysdate));
然后运行这个查询:
select dt, dump(dt) from a
SQL小提琴
返回的值为:
+-----------------------------+------------------ -----------------+
| DT | 转储(DT) |
+-----------------------------+------------------ -----------------+
| 2013 年 6 月 12 日 18:03:15+0000 | Typ=12 Len=7:120,113,6,12,19,4,16 |
| 2013 年 6 月 12 日 00:00:00+0000 | Typ=12 Len=7: 120,113,6,12,1,1,1 |
+-----------------------------+------------------ -----------------+
DUMP()
返回数据类型、字节长度和数据的内部表示。
换句话说,一个带时间的日期和一个被截断的日期,都有 7 个字节。它们的长度相同。
顺便说一句,我建议不要破坏潜在有用的数据,因为您担心空间。