oracle 更新视图

Update (Select a.empno, a.comm, b.dname
           From scott.emp a, scott.dept b
          Where a.deptno = b.deptno
            And b.loc In ('NEW YORK', 'DALLAS'))
   Set comm = 0.1;

UPDATE 视图有时候是一种很高效的修改方法。如果里面有JOIN, 要求整个结果集是KEY PRESERVED的,就是要修改的那张表的唯一性必需得到保证。你的例子中修改的是A表,那么就要求B表在连接键上有唯一约束。有时候做不到这一点,比如B不是一个表,是另外一个复杂的子查询的结果,那么直接UPDATE就不行了,必须改用MERGE INTO。

原文地址:https://www.cnblogs.com/shuihaya/p/12159625.html