【发布时间】:2017-05-12 10:21:21
【问题描述】:
我正在尝试使用以下查询获取表中所有记录的最后更新日期和时间。
SELECT SCN_TO_TIMESTAMP(ORA_ROWSCN),id FROM TABLE_NAME
对于某些表格,其显示结果正确,但对于其他表格,我收到以下错误消息(具体来说,我使用的是 HR Schema 中自动生成的表格)
ORA-08181: 指定的编号不是有效的系统更改编号
ORA-06512:在“SYS.SCN_TO_TIMESTAMP”第 1 行
- 00000 - “指定的编号不是有效的系统更改编号”
*原因:提供的 scn 超出了有效 scn 的范围。 *操作:使用有效的 scn。
为什么我会收到此错误消息?在运行查询之前,我对同一个表运行了几个插入和更新查询。
谢谢
【问题讨论】:
-
另外,最好有一个额外的列来跟踪数据更改。 ORA_ROWSCN 非常不可靠,不适用于旧数据(例如您的情况)。