ORA-38104是Oracle数据库中的一个错误代码,表示无法更新ON子句中引用的列。这个错误通常发生在使用MERGE语句进行数据合并操作时。 在Oracle数据库中,MERGE语句用于将数据从一个表合并到另一个表,根据指定的条件进行插入、更新或删除操作。在MERGE语句中,ON子句用于指定合并条件,而当ON子句中引用的列需要进行...
ORA-38104: 无法更新 ON 子句中引用的列: "T2"."NAME" 2. DELETE子句的WHERE顺序必须最后 MERGE INTO T2 USING T1 ON (T1.NAME=T2.NAME) WHEN MATCHED THEN UPDATE SET T2.MONEY=T1.MONEY+T2.MONEY DELETE WHERE (T2.NAME = 'A') WHERE T1.NAME='A'; ORA-00933: SQL 命令未正确结束 3.DELETE...
1:要么UPDATE SET 后面字段不能包含ON 后面出现的字段 2:要么直接就不使用下面的语句(这个根据实际需求来取舍) WHEN MATCHED THEN UPDATE SET "CONFIG_ID" = 2,"REPORT_ID"=6 参考链接:Oracle“ORA-38104: 无法更新ON子句中引用的列”解决方式 - MrZhaoyx - 博客园 ——— 版权声明:本文为CSDN博主「lgq201...
update_clause WHEN NOT MATCHED THEN merge_insert_clause; --好处:是执行 同时有插入和更新操作...
ORA-38104: 无法更新 ON 子句中引用的列: 代码人生 MERGE Into ywk_nmjtjbsj Y Using (Select * From KSXNH_JZK.jzk_nmjtjbsj Where NVL(XGBZ,'1')!='1' And nvl(sfydq,'2')='j9') J On (J.ID=Y.ID) When MATCHED THEN UPDATE Set...
Oracle“ORA-38104: 无法更新ON子句中引用的列”解决方式 2020-07-02 16:00 −... MrZhaoyx 0 6551 ORA-01950: no privileges on tablespace 'USERS' 2019-12-25 15:09 −问题描述:对一张新增的表进行insert操作,提示没有操作权限,简单的记录一下 解决方案:grant resource to username grant resource to...
Using (Select * From KSXNH_JZK.jzk_nmjtjbsj Where NVL(XGBZ,'1')!='1' And nvl(sfydq,'2')='j9') J On (J.ID=Y.ID) When MATCHED THEN UPDATE Set Y.ID = J.ID , Y.JTBM = J.JTBM, ··· 执行的时候报无法更新on子句中引用的列'Y'.'ID' ...
这里请注意,在ON中出现的字段,不可以在WHEN MATCHED THEN中更新,所以无法更新A.CORE_SIZE字段 正确的写法如下: MERGEINTOTABLE1 A USING (SELECTT.ID, T.NEW_CORE_SIZEFROMTABLE2 T) BON(A.ID=B.ID)WHENMATCHEDTHENUPDATESETA.CORE_SIZE=DECODE(A.CORE_SIZE,null,B.NEW_CORE_SIZE,A.CORE_SIZE);...
update_clause WHEN NOT MATCHED THEN merge_insert_clause; --好处:是执行 同时有插入和更新操作...