SqlPlus를 통한 Oracle BLOB 내보내기

SqlPlus를 통한 Oracle BLOB 내보내기

Oracle에서 BLOB 값 선택을 신속하게 수행하고 결과를 메모장에 복사한 다음 다른 Oracle에서 해당 삽입을 실행하여 데이터를 삽입하는 쉽고 빠른 방법이 있습니까? 데이터는 4K보다 훨씬 깁니다.

sqlplus 도구(더 명확하게 말하면 PlSql 개발자)에만 액세스할 수 있기 때문에 외부 도구를 사용하거나 파일을 복사할 수 없으며 인터넷 검색에서 본 내용이 그리 쉽지 않기 때문에 허용되는 대답은 간단할 것입니다. "아니요, 방법이 없습니다."

답변1

메모장을 중개자로 사용하는 것보다SQL*Plus COPY 명령, 즉

COPY FROM source_table@source_tns_alias
       TO destination_table@destination_tns_alias
   CREATE dest_table_name ( column_list)
    USING SELECT column_list 
            FROM source_table_name

SOURCE_TNS_ALIAS에 있는 SOURCE_TABLE의 내용을 DESTINATION_TNS_ALIAS에 새로 생성된 테이블 DEST_TABLE_NAME에 복사합니다. COPY 명령에는 기존 테이블에 데이터를 로드하는 옵션도 있습니다.

답변2

불행하게도 BLOB는 SQL*Plus COPY 명령을 사용하여 복사할 수 없습니다(Oracle8 이후로는 이에 대한 작업을 수행하지 않았기 때문입니다). 당신은데이터베이스 링크데이터베이스 중 하나에 복사하고 그 위에 복사하시겠습니까?

이것이 실패하면 점점 더 절망적이 될 수 있습니다. Oracle-Base의 Tim은 www.oracle-base.com에 PL/SQL 기반 FTP 클라이언트를 보유하고 있습니다. 하지만 중개자 역할을 하려면 FTP 서버가 필요합니다.

Cleveridea4data sourceforge 프로젝트에는 Michael O'Neill이 작성한 이메일 대안이 있습니다.

관련 정보