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。

posted @   shu'sblog  阅读(2367)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
点击右上角即可分享
微信分享提示