Plsql 插入视图
在Oracle中,我使用“union all”创建了一个视图,如下所示Plsql 插入视图,plsql,oracle11g,Plsql,Oracle11g,在Oracle中,我使用“union all”创建了一个视图,如下所示 create view TESTVIEW as select column1 from TABLE1 union all select column1 from TABLE2; 如果我想插入到这个视图中,我得到 SQL错误:ORA-01732:此视图上的数据操作不合法 如果我知道要在表1中插入,有没有办法解决这个问题?是的,您应该能够在视图上创建一个触发器,而不是insert触发器 您需要编写触发器以在基表中插入行,
create view TESTVIEW as
select column1 from TABLE1
union all
select column1 from TABLE2;
如果我想插入到这个视图中,我得到
SQL错误:ORA-01732:此视图上的数据操作不合法
如果我知道要在表1中插入,有没有办法解决这个问题?是的,您应该能够在视图上创建一个触发器,而不是insert触发器
您需要编写触发器以在基表中插入行,并且它将“而不是”运行原始插入。请参阅了解哪些视图是可直接更新的。对于不可直接更新的视图,请按照上述帖子中的建议使用“代替”触发器。此视图不可更新,您必须直接插入到表1中