Database
ORA-22992 원격 테이블로 부터 선택된 LOB 위치를 사용할 수 없습니다.
보따리의새세상
2019. 4. 3. 23:18
"CLOB 컬럼 다루기"
Database의 컬럼 데이터 타입 중
CLOB 형태가 있습니다.
A_TBL이라는 테이블의 a_col 이라는 컬럼이
CLOB 타입이라고 가정합니다.
일반적으로,
SELECT a_col
FROM OWN.A_TBL ;
처럼 조회 시
쿼리 툴에서 눈으로 보기에는
정상적으로 조회되어 보이지만,
엑셀로 내려받거나,
해당 컬럼 데이터 전체 조회 시
전체가 조회되지 않고
중간에 짤려서 조회되는
경우가 있습니다.
쿼리 툴마다 설정을
조절하는 옵션이 있으나,
오렌지, 토드, 디벨로퍼 등
옵션 설정을 찾기보다,
아래와 같이 실행하면,
CLOB 컬럼이 잘리지 않고
컬럼 전체 데이터를 SELECT 할 수
있습니다.
SELECT DBMS_LOB.SUBSTR(a_col)
FROM OWN.A_TBL ;
CLOB 컬럼의 특징이
하나 더 있는데,
CLOB이 있는 테이블은
DB_LINK로 조회되지 않습니다.
"ORA-22992 :
원격 테이블로 부터 선택된
LOB 위치를 사용할 수 없습니다."
라는 메시지를 보게 됩니다.
DB_LINK로 INSERT / SELECT 도
할 수 없습니다.
이럴 경우 해결방법은,
테이블생성과 함께 데이터도 복제하는
CTAS 복제방식을 사용하면 됩니다.
방법은 아래 포스팅 참고하세요.
[참고 포스팅] 테이블 생성과 동시에 복제하기(CTAS)