dboutput

입력으로 받는 쿼리 결과를 SQL 쿼리문으로 변환해 외부 SQL 서버에 입력합니다. dbload 명령어와 동일한 기능을 수행하고, rowretry 옵션의 기본값만 다릅니다.

문법

dboutput PROFILE [OPTIONS] table=TABLE FIELD, ...
필수 매개변수
PROFILE

JDBC 접속 프로파일. 프로파일은 웹 콘솔에서 구성할 수 있습니다.

Note
ENT-3.10.2009.0. SNR-3.1.2008.0 배포 버전부터 JDBC 프로파일이 접속 프로파일에 통합되었습니다.
table=TABLE

데이터를 입력할 테이블 이름

FIELD, ...

데이터베이스에 입력할 필드 목록. 필드 구분자로 쉼표(,)를 사용합니다. 필드 이름 앞에 + 기호를 붙이면 키 컬럼으로 인식합니다.

필드 이름은 대상 테이블의 컬럼 이름과 일치해야 합니다. 필드와 컬럼의 이름이 일치하지 않으면, dbload 명령문 앞에 rename 명령문을 이용해 SQL 데이터베이스의 컬럼과 이름을 일치시키십시오.

선택 매개변수
batchsize=INT

데이터베이스 배치 트랜잭션에 적용할 처리 단위. 단위가 크면 한 번에 많이 커밋하므로 효율적이지만, 트랜잭션이 실패했을 때 롤백할 레코드도 증가합니다. 권장하는 값은 2000입니다. 처리 단위를 지정하지 않으면 1건 단위로 커밋하므로 느릴 수 있습니다.

database=SCHEMA

접속 후 사용할 데이터베이스(또는 스키마)

rowretry=BOOL

행 단위로 재시도 여부(기본값: f). 설정하면 성능에서 손해를 볼 수 있지만 데이터 손실을 최소화할 수 있습니다.

  • t: 배치 트랜잭션이 실패했을 때 행 단위로 트랜잭션 수행
  • f: 배치 트랜잭션이 실패했을 때 행 단위 트랜잭션을 하지 않음
stoponfail=BOOL

실패한 쿼리 명령이 있을 때 트랜잭션의 중지 여부(기본값: f).

  • t: 쿼리가 실패했을 때 트랜잭션을 중지
  • f: 실패한 트랜잭션을 건너뛰고 다음 트랜잭션을 실행
type=update

실행할 SQL 쿼리의 유형을 insert, update 중에서 지정(기본값: insert).

update로 설정하면 FIELD에 적어도 1개 이상의 필드를 키 컬럼으로 지정해야 합니다.