在oracle中插入数据到视图中的方法

插入视图的条件:
1、如果视图是基于一个基本表生成的,则称为非连接视图。所有非连接视图都可以更新,也就是说,您可以在这个视图上进行插入、更新和删除操作。
2。如果它连接到视图,则符合基本标准更新。现在我没有解释插入标准:在INSERT语句中表中任何字段的非代码保留的显式或隐式引用,如果使用检查选项子句的定义视图,则不查看插入操作是否执行。
注释:代码保留表,非代码保留表解释:
在部门,dept_no是主要的代码,并在EMP,emp_no是主要的代码
然后建立连接视图:
创建视图emp_dept作为
选择emp.emp_no,emp.emp_name,emp.dept_no,dept.name
来自EMP部
在dept_no = dept.dept_no EMP。

鉴于此,emp_no仍然作为主码,所以EMP是码预约表,并在部门dept_no不是主要的代码,所以它是一种非码预约表。

当关联多个表时,需要在视图中插入数据,建议使用替代触发器。

创建触发器{触发器名称}
在{视图名称}上
插入
作为
开始
-声明变量;
-所有列的数据都从插入的表中检测出来,并被分配到好变量的声明中。

用上面的数据将数据插入到第一个表中
-用上面的数据将数据插入到第二个表中
终点

此外,一个user_updatable_columns表可用于查询的表或视图中是否可以更新。