我有一个计划过程不断更新空时间戳列和当前时间戳,但有趣的是我看到这种不一致:
每个记录都通过单个或多个行的单个更新进行更新:
update timestamp = current_timestamp where row_condition = true;
但是如何发生这种情况,Oracle current_timestamp
在不同的查询调用中表现不同?一个输出完全正确的时间戳,但其他输出的东西从哪儿(31-DEC-69)?
答案 0 :(得分:0)
听起来好像你的列可能有一个DEFAULT值。插入了行,其中没有为timestamp列提供值,因此使用默认值填充。
尝试select data_default from all_tab_columns where table_name = 'YOUR_TABLE'
; YOUR_TABLE是表名(记得以大写形式写)。这将告诉您该列是否有默认值。如果您愿意,也可以在where子句中添加列名称 - 但如果不喜欢,您可能会发现更多您可能不知道的信息。