9.3.3 视图创建语句对视图操作的影响

如果想要一个可以更新(这里的更新是指增加、删除、修改)的视图,源表应尽量是单表,否则限制比较多。下面的情况一旦出现在视图中,视图就不允许更新。

❑DISTINCT关键字。

❑集合运算或分组函数,如INTERSECT、SUM、MAX、COUNT等函数。

❑出现GROUP BY、ORDER BY、MODEL、START WITH等语句。

❑出现伪列关键字,如ROWNUM。

除了以上情况外,还需要考虑基表的一些约束,这些约束对视图数据的更新都有一定影响。如果需要创建可以更新的视图,可以使用INSTEAD OF触发器。