首页 > 解决方案 > Oracle物化视图添加新数据但没有更新

问题描述

我有一个加入请求,数据可以在白天和从日期到日期(删除的行)更改,所以我想通过选择它们来保留某些数据,并将它们保存在 3 个月后的第二天的其他地方。

通常,我会做一个物化视图(用于表演/不要触摸生产表)并每天晚上/或在日志上刷新它,但这里的问题是我希望能够添加昨天的新数据而不是更新整个 mview(然后将从 mview 中删除数据)并说:可以删除超过 3 个月的内容。

我怎样才能做到这一点?也许我对 mview 的想法完全错误,唯一的方法是使用 dbms_scheduler?

标签: sqloracleplsqloracle12c

解决方案


那就用你自己的桌子吧。安排一个工作(使用dbms_scheduler你提到的),这将

  • 插入新行(昨天日期)
  • 删除超过 3 个月的行

正确索引它,以便您能够比没有索引更快地获取“存档”数据。不要忘记定期收集表和索引的统计信息。


推荐阅读