我的印象一直以为是不可以修改,查了查,原来在一定的前提下,是可以的,无论是单个表还是多表关联,只要能区分映射‘实体’,否则,可以使用触发器。
视图中使用DML的规定:
l可以在简单视图中执行DML 操作
l当视图定义中包含以下元素之一时不能使用delete:
•组函数
•GROUPBY子句
•DISTINCT 关键字
ROWNUM 伪列
当视图定义中包含以下元素之一时不能使用update :
l组函数
lGROUP BY子句
lDISTINCT 关键字
lROWNUM 伪列
l列的定义为表达式
当视图定义中包含以下元素之一时不能使用insert :
l组函数
lGROUP BY 子句
lDISTINCT 关键字
lROWNUM 伪列
l列的定义为表达式
l表中非空的列在视图定义中未包括
屏蔽 DML 操作:
l可以使用WITH READ ONLY 选项屏蔽对视图的DML 操作
l任何DML 操作都会返回一个Oracle server 错误
本文详细解析了在视图中执行DML操作的规则,包括哪些情况下不能使用delete、update、insert操作,以及如何通过WITHREADONLY选项来屏蔽对视图的DML操作。

被折叠的 条评论
为什么被折叠?



