본문 바로가기

IT관련/Oracle

오라클(Oracle) - sql 결과 내보내기 SPOOL 명령어

오라클에서 sql문을 사용하여 나타는 결괏값을

파일로 내보낼 때 SPOOL 명령어를 사용하여 출력한다.


사용방법은 아래와 같다.

SET [옵션]  [값]
SPOOL [저장 위치]
  sql문장
SPOOL OFF

set은 필요 시에만 사용하면 된다.

 

set의 많은 기능들을 알고 있는 건 아니지만

 

자주 사용되는 set 값은 아래와 같다.

SET HEADING OFF    -- 헤더 표시 안함
SET PAGESIZE 50000 -- 페이지 출력 크기가 기본은 14, 최대값 50000
SET TERM OFF         -- 조회 결과 표시하지 않음
SET ECHO OFF         -- 명령이 표시 되지 않음
SET COLSEP '|'          -- 칼럼 구분자

설명은 주석으로 써놓았으므로 보고 참고하길 바란다.


아래는 사용 예제이다

SET HEADING OFF
SET PAGESIZE 50000
SET TERM OFF
SET ECHO OFF
SET COLSEP '|'

SPOOL C:\Users\user\DeskTop\Test.txt
select * from board;
SPOOL OFF

위와 같이 사용할 수도 있고

. sql 파일을 생성하여 @파일명. sql과 같이

파일을 불러와서 실행을 실행 결괏값을 저장할 수도 있다.

 

칼럼 구분자는 ''(싱글다운 표) 안에 어떤 것이든 사용 가능하며

선언을 안 해줄 시 탭 구분자로 나누어져 파일이 저장된다.