sibDDLGenerator 명령
DBMS(Database Management System) 자원을 작성하려면 메시징 엔진에 DDL(Data Definition Language)문이 필요합니다. 이 DBMS 자원은 sibDDLGenerator 명령으로 생성됩니다.
구문
>>-sibDDLGenerator--+---------------------+---------------------> '- -system--DBMS name-' >--+-------------------------+--+---------------------------+---> '- -version--DBMS version-' '- -platform--DBMS platform-' >--+-----------------------+--+-------------------+-------------> '- -schema--schema name-' '- -user--user name-' >--+----------+--+----------------------+-----------------------> +- -create-+ '- -database--database-' '- -drop---' >--+-------------------------------+----------------------------> '- -storagegroup--storage group-' >--+---------------------------------+--------------------------> '- -catalog--high level qualifier-' >--+---------------------------+--------------------------------> '- -bufferpool--buffer pool-' >--+-------------------------------+--+----------------+--------> '- -statementend--statement end-' '- -nolinebreaks-' >--+----------------+--+-------------------------+--------------> '- -noblanklines-' '- -firstline--first line-' >--+-----------------------+--+---------------------+-----------> '- -lastline--last line-' '- -permanent--number-' >--+---------------------+------------------------------------->< '- -temporary--number-'
목적
메시징 엔진에는 시작 시 작성 가능한, 데이터베이스 테이블과 같은 DBMS 자원이 필요합니다. 데이터베이스 관리자만 데이터베이스 테이블을 작성할 권한을 보유하는 정책이 설치에 있으면 sibDDLGenerator 명령을 사용하여 데이터베이스 관리자가 메시징 엔진에 필요한 DBMS 자원을 작성할 수 있습니다. sibDDLGenerator 명령은 데이터베이스 관리자가 데이터 저장소 테이블에 나열되는 DBMS 자원을 작성 및 저장(나중 프로세스에서)할 수 있는 DDL문을 생성합니다.
또한 메시징 엔진에서 이러한 테이블을 사용할 수 있는 적절한 권한을 부여하는 DDL문도 생성합니다.
IBM® i
명령행에 액세스하려면 STRQSH 명령을 사용하여
Qshell 세션을 시작하십시오.
자세한 정보는 wsadmin 스크립트를 사용하여 WebSphere 스크립트를 실행하도록 Qshell 구성의 내용을 참조하십시오..
선택적 매개변수
일부 매개변수는 매개변수 목록에 표시된 대로 특정 DBMS에만 적용됩니다(예: -database[z/OS용 DB2®에만 적용]).
- -system
- 관리자가 DDL문을 처리하는 DBMS 유형을 식별합니다. 올바른 값은 다음과 같습니다.
- db2
- oracle
- sqlserver
- sybase
- informix
- derby
- -version
- -system 매개변수에서 식별된 DBMS의 버전 번호.
다음 테이블에서는 -version 매개변수를 제공하지
않는 경우 사용되는 기본값을 표시합니다.
도구를 실행할 때 CWSIS1595E 또는 CWSIS1503E 오류를 수신하면 테이블 다음에 있는 참고를 참조하여 대체 -version 매개변수 값을 데이터베이스 버전에 대해 사용할 수 있는지 여부를 판별하십시오.
표 1. -version 매개변수에 대한 값. 테이블의 첫 번째 열은 -system 매개변수 값을 나열합니다. 테이블의 두 번째 열은 -platform 매개변수 값을 나열합니다. 테이블의 세 번째 열은 -version 매개변수의 기본값을 나열합니다. 테이블의 네 번째 열은 -version 매개변수의 다른 허용되는 값을 나열합니다. -system 매개변수 값 -platform 매개변수 값 -version 매개변수의 기본값 -version 매개변수의 다른 허용되는 값 db2 zos 7.1 8.1, 9.1(참고 1 참조) db2 unix, windows 8.1 9.1(참고 1 참조) db2 iseries 5.2(참고 2 참조) 5.3(참고 2 참조) oracle 8i 10g, 11g(참고 3 참조) sqlserver 2000 2005 sybase 12.0 12.5, 15.0 informix 9.3 7.3, 9.4, 10.0, 11.0(참고 4 참조) derby 10.1 참고:- -version 매개변수 값 8.1 및 9.1을 사용하여 UNIX 또는 Windows용 DB2에 대해 생성된 DDL은 동일합니다. -version 매개변수 값 7.1, 8.1, 9.1을 사용하여 z/OS®용 DB2에 대해 생성된 DDL은 동일합니다.
- IBM i의 경우 DB2 데이터베이스는 운영 체제의 일부이므로 OS/400® 버전에 대해 지정된 버전 번호에 해당합니다.
- -version 매개변수값 10g 및 11g를 사용하여 Oracle에 대해 생성된 DDL은 동일합니다.
- -version 매개변수값 10.0 및 11.0을 사용하여 Informix®에 대해 생성된 DDL은 동일합니다.
- -platform
- DBMS가 실행되는 운영 체제 플랫폼. 유효값은 다음과 같습니다.
- iseries
- unix
- windows
- zos
- -schema
- 메시징 엔진에서 사용하는 모든 오브젝트를 포함하는 스키마의 이름. -schema 매개변수를 제공하지 않으면 기본값은 IBMWSSIB입니다.
- -user
- DBMS와 상호 작용하는 데 사용되는 사용자 ID의 이름. -user 매개변수를 제공하지 않으면 기본값은 IBMUSER입니다.
- -create | -drop
- DDL문이 DBMS 자원을 작성하거나, 아니면 이를 삭제하는지 여부를 표시합니다. 매개변수를 제공하지 않으면 기본값은 -create입니다.
- -database[z/OS용 DB2에만 적용]
- 메시징 엔진 테이블에 할당되는 데이터베이스의 이름. -database 매개변수를 제공하지 않으면 기본값은 SIBDB입니다.
- -storagegroup[z/OS용 DB2에만 적용]
- 메시징 엔진 테이블에 할당되는 스토리지 그룹의 이름.
- -storagegroup 및 -catalog 매개변수 모두를 제공하는 경우 sibDDLGenerator 명령은 CREATE STOGROUP문의 두 값을 포함합니다.
- -storagegroup 매개변수만 제공하는 경우 sibDDLGenerator 명령은 다른 명령문에서 스토리지 그룹 이름을 사용하지만 CREATE STOGROUP문은 작성하지 않습니다.
- -catalog 매개변수만 제공하는 경우 sibDDLGenerator 명령은 사용법 명령문을 표시하고 종료됩니다.
- 두 매개변수를 모두 생략하는 경우 sibDDLGenerator 명령은 다른 명령문에서 스토리지 그룹 이름에 대해 기본값 SIBSG를 사용하지만 CREATE STOGROUP문은 작성하지 않습니다.
- -catalog[z/OS용 DB2에만 적용]
- 메시징 엔진 테이블에 할당되는 스토리지 그룹의 상위 레벨 규정자 이름. 기본값에 대한 정보는 -storagegroup 매개변수를 참조하십시오.
- -bufferpool[z/OS용 DB2에만 적용]
- 메시징 엔진 테이블에 할당된 버퍼 풀의 이름. -bufferpool 매개변수를 제공하지 않으면 기본값은 BP1입니다.
- -statementend
- 각 DDL문에 statement_end를 추가합니다.
예를 들어 ;를 사용하여 각 DDL문에 세미콜론을 추가할 수 있습니다. 기본적으로 sibDDLGenerator 명령은 각 명령문에
아무것도 추가하지 않습니다. 팁: UNIX 플랫폼에서, 세미콜론으로 이스케이프 처리하여 쉘에서 해석하지 못하도록 합니다.
- -nolinebreaks
- 행을 바꾸지 않고 하나의 행에 각 명령문을 배치합니다. 기본적으로 sibDDLGenerator 명령은 가독성을 향상시키기 위해 명령문을 여러 행으로 바꿉니다.
- -noblanklines
- 각 명령문 사이에 빈 행을 생략합니다. 기본적으로 sibDDLGenerator 명령은 가독성을 향상시키기 위해 각 명령문 사이에 빈 행을 삽입합니다.
- -firstline
- 출력의 첫 번째 행으로 first_line을 생성합니다. 예를 들어 first_line을 사용하여 대상 데이터베이스를 식별할 수 있습니다. 기본적으로 sibDDLGenerator 명령은 첫 번째 행을 생성하지 않습니다.
- -lastline
- 출력의 마지막 행으로 last_line을 생성합니다. 예를 들어 last_line을 사용하여 스크립트에서 명령을 실행하는 명령을 호출할 수 있습니다. 기본적으로 sibDDLGenerator 명령은 마지막 행을 생성하지 않습니다.
여러 테이블에 데이터 저장소를 분산시키는 데 다음과 같은 두 개의 선택적 매개변수가 사용됩니다.
- -permanent
- 다음과 같은 영구 테이블의 수
- 기본값: 1
- 최소값: 1
- 최대값: 참고 참조
- -temporary
- 다음과 같은 임시 테이블의 수
- 기본값: 1
- 최소값: 1
- 최대값: 참고 참조
예제
- sibDDLGenerator -system db2 -version 8.1 -platform zos
기본 스키마, 사용자 ID, 데이터베이스, 스토리지 그룹, 버퍼 풀을 포함하여 z/OS에서 실행 중인 DB2 8.1에 대한 DDL문을 생성합니다.
- sibDDLGenerator -system db2 -version 8.1 -platform windows -statementend ;
기본 스키마, 사용자 ID, 데이터베이스를 포함하여 Windows에서 실행 중인 DB2 8.1에 대한 DDL문을 생성합니다. DB2 CLP에 직접 명령문을 입력할 수 있습니다. 그러려면 각 명령문이 세미콜론으로 종료되어야 합니다.
- sibDDLGenerator -system oracle -version 8i -schema SIB -user fred
Oracle 8i에 대한 DDL문을 생성합니다.
- sibDDLGenerator -system oracle -schema SIB -user fred
이전 예제의 간단한 버전.