sql

오라클 ORA-01779 에러 발생시 merge 문 이용한 update

초이짬 2014. 5. 8. 19:22
728x90

오라클 update 에 select 이용시
힌트절이 11g 부터 사용이 안되는 부분이 있다.
그리고 구문 역시 정상이 아닐경우
ORA-01779
키보존 에러가 나올수 있다
그럴경우 merge 문을 이용해서 update를
시도하면 된다. 물론 merge 문이 없다면
구문을 다시 만들어야 되겟지만...

MERGE INTO 대상테이블 a
USING (참조테이블) c
ON (a.조인컬럼= c.조인컬럼
and a.조인컬럼 = c.조인컬럼)
WHEN MATCHED THEN
UPDATE SET
a.변경컬럼1 = c.값1
, a.변경컬럼2 = c.값2
;

728x90