본문 바로가기
ORACLE

DBLINK시 LOB CLOB 컬럼오류 해결

by 리틀홍콩 2015. 10. 5.
728x90

-- DB링크를 만든다.

CREATE DATABASE LINK DB링크명
CONNECT TO scott IDENTIFIED BY tiger USING 'DB링크명';

 

-- 원격테이블의 컬럼에 clob 혹은 long과 같은 데이터 타입이 존재한다.
select * from 원격테이블@DB링크명
where rownum = 1
-- 에러가 발생한다.  ORA-22992:원격테이블로부터 선택된 LOB위치를 사용할 수 없습니다.


-- 따라서 로컬에 원격지의 테이블을 만들고 그대로 만들어 준다.
create table temp_원격테이블
as
select * from 원격테이블@DB링크명
where 1=2;

-- 그리고나서 원격지 테이블을 그대로 insert해온다.
insert into temp_원격테이블
select * from 원격테이블@DB링크명


-- 이제 로컬테이블로 되어 있다.
select * from temp_원격테이블
where rownum = 1;




'ORACLE' 카테고리의 다른 글

튜닝수업 (20161126)  (0) 2016.12.26
여러 Row를 한Row로  (0) 2015.11.11
SQL 튜닝방법론  (0) 2015.09.16
Nested Loop 조인  (0) 2015.09.16
Oracle Join, ANSI Join 차이  (0) 2015.09.16

댓글