capturedOnly 특성

pureQueryXML 파일에 있는 SQL문만을 실행할 지 여부를 지정합니다.

애플리케이션과 함께 사용할 pureQueryXML 파일을 작성한 후 이 특성을 TRUE로 설정할 수 있습니다. SQL문을 캡처 중인 경우에는 TRUE로 설정할 수 없습니다.

이 특성은 다음과 같은 값을 가질 수 있습니다.

TRUE
애플리케이션은 pureQueryXML 파일에 있는 SQL문만을 실행합니다.
FALSE
애플리케이션은 pureQueryXML 파일에 없더라도 모든 SQL문을 실행합니다.
이 값이 기본값입니다.
주: capturedOnly 특성이 TRUE로 설정되는 경우, 특수 레지스터 또는 특수 레지스터 설정 효과가 있는 JDBC 연결 메소드를 설정하는 SET 명령문은 pureQuery Runtime에 의해 제한되지 않습니다. 명령문은 pureQueryXML 파일에 있는지 여부에 관계없이 항상 허용됩니다.
낙관적 잠금을 사용하여 SQL문이 실행되는 경우 명령문을 정적으로 실행할 수 없습니다. 결과적으로 pureQuery Runtime은 낙관적 잠금을 사용하여 실행되는 명령문을 캡처하지 않습니다. 명령문은 pureQuery Runtime 옵션 allowDynamicSQL 또는 capturedOnly의 영향을 받지 않습니다. 낙관적 잠금은 다음 방법 중 하나를 사용하여 적용됩니다.

DB2Connection.prepareDB2OptimisticLockingQuery
DB2Statement.executeDB2OptimisticLockingQuery

다음 표는 capturedOnly, executionModeallowDynamicSQL 조합과 결과적인 조작을 보여줍니다.

표 1. capturedOnly, executionMode 및 allowDynamicSQL 조합 및 결과 조작
capturedOnly executionMode allowDynamicSQL 일치하는 SQL문 결과
TRUE STATIC TRUE YES isBindable = True, 정적으로 SQL문 실행

isBindable = False, 동적으로 SQL문 실행

TRUE STATIC/DYNAMIC TRUE/FALSE NO 오류 리턴
TRUE STATIC FALSE YES isBindable = True, 정적으로 SQL문 실행

isBindable = False, 오류 리턴

TRUE DYNAMIC TRUE/FALSE YES SQL문 실행
FALSE STATIC TRUE YES isBindable = True, 정적으로 SQL문 실행

isBindable = False, 동적으로 SQL문 실행

FALSE STATIC TRUE NO 동적으로 SQL문 실행
FALSE STATIC FALSE YES isBindable = True, 정적으로 SQL문 실행

isBindable = False, 오류 리턴

FALSE STATIC FALSE NO 오류 리턴
FALSE DYNAMIC TRUE/FALSE YES/NO SQL문 실행

DB2 CLI 및 IBM Data Server Driver 사용법 참고

DB2® CLI(Call Level Interface) 또는 IBM® Data Server Driver를 pureQuery 런타임에 사용하는 경우 pureQuery Runtime 특성을 구성 키워드로 사용할 수 있습니다.

IBM CLI 키워드 구문
capturedOnly = TRUE | FALSE
IBM Data Server Driver 구성 구문
< parameter name="capturedOnly" value="TRUE | FALSE" />
.NET 연결 문자열 키워드에 대한 해당 IBM Data Server Provider
N/A

사용 참고사항

pureQuery 클라이언트 최적화를 사용하는 CLI 애플리케이션에 capturedOnly=TRUE 키워드가 설정되면 명령문이 pureQueryXML 파일에 있지 않은 경우 statementType SET_METHOD의 명령문이 pureQuery Runtime에 의해 제한됩니다.


피드백