GeneratePureQueryXml 유틸리티는 명령문 및 커서 속성 정보를 포함하는
SQL 스크립트 파일에서 pureQueryXML 파일을 생성합니다.
GeneratePureQueryXml 유틸리티는
SQL문 및 커서 속성 정보를 포함하는 파일을 읽고 pureQueryXML 파일을
작성합니다. 파일 작성 후 Configure 유틸리티를 사용하여
pureQuery Runtime에 사용할 수 있도록 파일을 준비하십시오. pureQueryXML 파일 구성 후
StaticBinder 유틸리티를 사용하여 SQL문을 포함하는 DB2® 패키지를
구성된 pureQueryXML 파일에서 작성하고 바인드하십시오.
명령 구문

(1)
>>-------java--java com.ibm.pdq.tools.GeneratePureQueryXml------>
>-- -username--user-ID-- -password--password-- -url--JDBC-URL--->
>--+---------------------------+-- -pureQueryXml--fileName------>
'- -driverName--JDBC-driver-'
>-- -inputSql--fileName--+----------------------------------+--->
'- -commentStart--commentIndicator-'
>--+---------------------------------+-------------------------->
'- -statementDelimiter -delimiter-'
>--+-------------------------------------+---------------------->
'- -resultSetHoldability -holdability-'
>--+-------------------------------------+---------------------->
'- -resultSetConcurrency--concurrency-'
>--+-----------------------+--+-----------------------+--------->
'- -resultSetType--type-' | (2) |
'-| Trace options |-----'
>--+--------+--------------------------------------------------><
'- -help-'
주:
- 임의의 순서로 옵션을
지정할 수 있습니다.
- 구문의 경우 해당 옵션의 설명을 참조하십시오.
다이어그램에서 사용되는
규칙을 이해하려면 구문 다이어그램 읽는 방법을 참조하십시오.
옵션에 대한 설명
- -username user-ID
- user-ID는 데이터베이스에 대한 인증에 사용할
사용자 ID를 지정합니다.
- -password password
- 데이터베이스에 대한 인증에 사용할 암호를 지정합니다.
- -url JDBC-URL
- 데이터베이스와의 연결을 설정하기 위해 사용할 JDBC URL을
지정합니다.
- -driverName JDBC-driver
- 데이터베이스와의 연결을 설정하기 위해 사용할 JDBC 드라이버의
완전한 이름을 지정합니다. 기본값은 IBM® Data
Server Driver for JDBC and SQLJ에 대한 드라이버인 com.ibm.db2.jcc.DB2Driver입니다.
- -pureQueryXml file
- 출력 pureQueryXML 파일의 절대 경로 또는 상대 경로를
지정합니다.
- -inputSql file
- SQL 스크립트 파일의 절대 경로 또는 상대 경로를 지정합니다.
SQL 스크립트 파일의 형식에 대한 정보는 GeneratePureQueryXml 유틸리티에서 사용되는 SQL 스크립트 파일의 형식을 참조하십시오.
- -commentStart file
- 행의 시작 부분에 표시되어 주석행을 나타내는
문자 조합을 지정합니다. 주석행은 주석 뒤에 바로 오는 SQL문에 적용되는
명령문 커서 속성을 포함할 수 있습니다. 기본값은 이중 대시(--)입니다.
- -statementDelimiter delimiter
- SQL 스크립트 파일에서 명령문을 구분하는 데 사용되는
문자 조합을 지정합니다. 기본 문자는 세미콜론(;)입니다.
- -resultSetHoldability holdability
- 모든 명령문에 적용되는 결과 세트 유지 가능성을 지정합니다.
holdability의 값은 다음 중 하나입니다.
- CLOSE_CURSORS_AT_COMMIT는 결과 세트 유지 가능성을
커미트 시 닫기로 설정합니다.
- HOLD_CURSORS_OVER_COMMIT는 결과 세트 유지 가능성을
커미트 동안 커서 유지로 설정합니다.
기본값은 HOLD_CURSORS_OVER_COMMIT입니다.
SQL문 바로 앞에 오는
주석행에 유지 가능성을 지정하여 SQL문의 특정 SQL문에 대해
유지 가능성 값을 겹쳐쓸 수 있습니다.
- -resultSetConcurrency concurrency
- 모든 명령문에 적용되는 결과 세트 동시성을 지정합니다.
동시성의 값은 다음 중 하나입니다.
- CONCUR_READ_ONLY는 커서 동시성을 읽기 전용으로
설정합니다.
- CONCUR_UPDATABLE은 커서 동시성을
갱신 가능으로 설정합니다.
기본값은 CONCUR_READ_ONLY입니다.
SQL문 바로 앞에 오는
주석행에 동시성을 지정하여 SQL문의 특정 SQL문에 대해
동시성 값을 겹쳐쓸 수 있습니다.
- -resultSetType type
- 모든 명령문에 적용되는 결과 세트 유형을 지정합니다. 유형의 값은
다음 중 하나입니다.
- TYPE_FORWARD_ONLY는 결과 세트 유형을
앞으로만으로 설정합니다.
- TYPE_SCROLL_SENSITIVE는 결과 세트 유형을
스크롤 구별함으로 설정합니다.
- TYPE_SCROLL_INSENSITIVE는 결과 세트 유형을
스크롤 구별 안 함으로 설정합니다.
SQL문 바로 앞에 오는
주석행에 결과 세트 유형을 지정하여 SQL문의 특정 SQL문에 대해
결과 세트 유형 값을 겹쳐쓸 수 있습니다.
- Trace options
- 메시지를 로그할 파일 및 로그할 정보 레벨을
지정할 수 있습니다.

>>-+------------------------+--+---------------------------+---><
'- -traceFile--file-name-' | .-OFF-----. |
'- -traceLevel--+-ALL-----+-'
+-SEVERE--+
+-WARNING-+
+-INFO----+
+-CONFIG--+
+-FINE----+
+-FINER---+
'-FINEST--'
- -traceFile file-name
- 조작에 대한 정보를 로그하는데 사용하려는 절대 또는 상대 경로 및 파일 이름을
지정합니다.
- 파일이 이미 존재한다면 pureQuery는 새 메시지를 파일의 기존 컨텐츠에 추가합니다.기본으로,
엔트리는 System.err에 기록됩니다.
- -traceLevel OFF|SEVERE|WARNING|INFO|CONFIG|FINE|FINER|FINEST|ALL
- 로그할 정보 유형을 지정합니다. 기본 레벨은 OFF입니다. 로그 엔트리를 기록할 파일을 지정하지 않고
이 옵션을 OFF가 아닌 다른 값으로 설정하는 경우, 엔트리는 System.err에 기록됩니다.
- -help
- 요약 사용 정보를 표시합니다.
출력 pureQueryXML 파일에 대한 참고사항
다음 목록에는
pureQueryXML 파일에 대한 사용 정보가 포함되어 있습니다.
- SQL 스크립트 파일에서 pureQueryXML 파일을 작성하는 경우
각 SQL문에 대해 다음 기준이 충족되는지 확인하십시오.
- 파일의 SQL문 텍스트가 애플리케이션에서 발행한 SQL문과
정확히 일치합니다.
- 파일의 SQL문에 대한 결과 세트 유지 가능성, 동시성 및 유형 설정이
애플리케이션에서 발행한 SQL문에 대한 설정과 일치합니다.
정보가 일치하지 않는 경우, pureQuery 클라이언트 최적화는
pureQuery 런타임 executionMode 특성이
STATIC으로 설정되었거나 런타임 capturedOnly 특성이
TRUE로 설정되었을 때 애플리케이션에서 발행한 명령문과 SQL문을 일치시키지 않습니다.
- SQL문을 정적으로 실행하기 위해 출력 pureQueryXML 파일을
pureQuery 클라이언트 최적화에 직접 사용할 수 없습니다. StaticBinder 유틸리티를 사용하기 전에
클라이언트 최적화에 사용 가능하도록 Configure 유틸리티를 사용하여 pureQueryXML 파일을
수정해야 합니다.
- 출력 pureQueryXML 파일에는 pureQuery 클라이언트 최적화를 사용하는
애플리케이션에서 SQL문을 캡처할 때 작성되는 pureQueryXML 파일에
사용 가능한 특수 레지스터 정보 및 스택 추적 정보와 같은 애플리케이션
실행 정보가 포함되어 있지 않습니다.
- 출력 pureQueryXML 파일에는
런타임 시 정적으로 실행될 일치항목으로 명령문을 식별할 때
pureQuery 클라이언트 최적화에서 사용되는 다음과 같은 SQL문 정보가 포함되어 있지 않습니다.
- 자동 생성된 키 컬럼 이름
- 자동 생성된 키 컬럼 인덱스
- 자동 생성된 키 표시기
pureQuery 클라이언트 최적화를 사용하는 애플리케이션이
SQL문을 정적으로 실행하도록 구성되고 GeneratePureQueryXml 유틸리티에 의해 작성된 pureQueryXML 파일을
사용하는 경우, 애플리케이션에서 발행되는 명령문은 세 가지 기능 중 하나라도 사용하면
SQL문의 텍스트가 동일해도 정적으로 실행되지 않습니다.
다음 예는 SQL 스크립트 파일 c:\mystatements.sql에 있는
명령문에 대한 정보를 포함하는 pureQueryXML 파일 c:\statements.pdqxml을
작성합니다.
java com.ibm.pdq.tools.GenPdqXml
-username db2admin –password mypass
–url jdbc:db2://localhost:50000/mydb
–pureQueryXml "c:\statements.pdqxml" –inputSql "c:\mystatements.sql"