프로시저를 돌리다가 아래와 같은 이슈에 직면함
"ORA-02069: global_names 매개변수는 이 작업에 TRUE라고 설정해야만 합니다"
문제가 발생하는 부분을 살펴보니 아래와 같이 SELECT INSERT 하는 부분 이었음
INSERT INTO TAB2@STS(
COL1
,COL2
,COL3
)
SELECT X.COL1
,X.COL2
,FN_FUNCTION_01(X.COL1, X.COL2) COL3
FROM TAB1 X
결론부터 말하면 문제는 DB링크 방식으로 다른 DB의 테이블에 INSERT를 할 시, FUNCTION을 사용하면 발생하는 오류
해결 : FUNCTION 부분을 스칼라 쿼리로 변경하여 해결
INSERT INTO TAB2@STS(
COL1
,COL2
,COL3
)
SELECT X.COL1
,X.COL2
,(SELECT COL_X FROM TAB3 Y WHERE Y.COL1 = X.COL1 AND Y.COL2 = X.COL2 AND ROWNUM =1 ) COL3
FROM TAB1 X
'오라클(DB) > 메모' 카테고리의 다른 글
ORA-01031: 권한이 불충분합니다 (0) | 2024.05.20 |
---|