【发布时间】:2021-05-19 22:24:26
【问题描述】:
晚安,我正在尝试在 oracle 中创建物化视图,但出现以下错误消息。我知道有几个限制,但我无法确定错误是什么。请感谢您的帮助。
观察: - 更新方法必须是增量的。
所有表都没有主键,我无法创建它们,因为我没有访问权限。
在 ordenes 上创建 MATERIALIZED VIEW LOG
使用 ROWID
包括新的价值观;
在 tabla_hija 上创建实体化视图日志
使用 ROWID
包括新的价值观;
创建物化视图 vm_prueba2
按需快速刷新
带有rowid
作为
选择 ordenid,o.empleadoid,o.clienteid,fechaorden,descuento,nvl(c.desccripcion,'')as ddesc,e.desccripcion
来自 ordenes o,tabla_hija c,tabla_hija e
在哪里
( o.clienteid=c.valor(+) and c.id_tabla=1 or c.valor is null ) and
( o.empleadoid=e.valor(+) and e.id_tabla=2 or e.valor is null )order by ordenid asc;
通知错误 - ORA-12052: 12052. 00000 - “无法快速刷新实体化视图 %s.%s” *原因:定义中缺少某些表的 ROWID 或 外连接的内表没有 UNIQUE 约束 加入列。 *操作:指定 FORCE 或 COMPLETE 选项。如果出现此错误 在创建过程中,物化视图定义可能是 改变了。请参阅有关物化视图的文档。
【问题讨论】:
标签: oracle oracle11g oracle-sqldeveloper