GeneratePureQueryXml 유틸리티

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-'   

주:
  1. 임의의 순서로 옵션을 지정할 수 있습니다.
  2. 구문의 경우 해당 옵션의 설명을 참조하십시오.

다이어그램에서 사용되는 규칙을 이해하려면 구문 다이어그램 읽는 방법을 참조하십시오.

옵션에 대한 설명

-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"

피드백