SQL错误:ORA-01732:此视图上的数据操作操作不合法

时间:2013-09-01 12:09:50

标签: sql oracle

我正在使用oracle 10g和sql developer来编写查询。

我有一个用户ESTRADM,它有一些表和一些物化视图。我试图在表MTEP_THREEDS_CARD_MASTER中插入一行,其相应的物化视图为MTEP_THREEDS_CARD_MASTER(表和视图具有相同的名称)。

现在我执行查询

insert into ESTRADM.MTEP_THREEDS_CARD_MASTER values (col1,col2,..);

它给了我一个错误:

  

错误报告:
  SQL错误:ORA-01732:此视图上的数据操作操作不合法
  01732. 00000 - “数据操作操作在此视图上不合法”
  *原因:
  *行动:

我的物化视图已禁用QUERY REWRITE。

我没有得到这个为什么它试图插入视图为什么它不写入表? 如何在表格中插入一行?

1 个答案:

答案 0 :(得分:2)

只能直接修改实体化视图的子集,并且为了这样,他们必须遵守文档中列出的严格规则:http://docs.oracle.com/cd/B19306_01/server.102/b14226/repmview.htm

如果您的MV定义符合这些限制且仍然无法修改,则发布MV的定义以及它引用的所有表的完整定义(包括约束)。