注册
达梦数据库-错误码-[-4596]-分析处理
技术分享/ 文章详情 /

达梦数据库-错误码-[-4596]-分析处理

PYZ 2024/05/31 759 0 0

错误码:-4596
错误内容:此查询表达式不允许 FOR UPDATE

原因:带有派生表的子查询SQL无法进行select for update,达梦默认为不可更新视图,因此报错。

示例:

select * from
       (select e.ename as ename,
               e.sal   as sal  ,
               d.dname as dname
        from emp e
        left join dept d
        on e.deptno=d.deptno
       ) t
where sal>1000 for update;

问题处理:调整参数view_pullup_flag=2,对包含别名和同名列的视图进行上拉优化

select /*+ view_pullup_flag(2)*/ * from
       (select e.ename as ename,
               e.sal   as sal  ,
               d.dname as dname
        from emp e
        left join dept d
        on e.deptno=d.deptno
       ) t
where sal>1000 for update;
评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服