微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

版本视图上的 Oracle 闪回查询

如何解决版本视图上的 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 举报,一经查实,本站将立刻删除。