版本视图上的 Oracle 闪回查询

问题描述

示例场景: 我有一个名为 DEPARTMENT 的表,它启用了闪回数据存档。启用闪回数据存档后,我可以运行以下查询

select
    versions_operation,versions_startscn,versions_endscn,versions_starttime,versions_endtime,department_id,department_name
from DEPARTMENT VERSIONS BETWEEN SCN MINVALUE AND MAXVALUE;

现在,我们已升级到基于版本的重新定义(EBR),旧表 DEPARTMENT 已重命名为 DEPARTMENT_。在基表 DEPARTMENT_ 之上,有一个编辑视图 DEPARTMENT。

现在,当我运行查询时:

select
  versions_operation,department_name
from DEPARTMENT VERSIONS BETWEEN SCN MINVALUE AND MAXVALUE;

上述查询将产生 versions_* 列的无效标识符错误。 如果我删除了 versions_* 列并运行以下查询

select
  department_id,department_name
from DEPARTMENT VERSIONS BETWEEN SCN MINVALUE AND MAXVALUE;

上面的查询显示了所有的日志,但如果没有版本信息,结果集对我来说没有用。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)