pureQuery를 사용하여 JPA 애플리케이션에서
SQL문의 정적 실행을 구성하는 경우 정적 SQL의 이점과 워크벤치의
유용한 많은 기능을 사용할 수 있습니다.
정적 SQL은 다음과 같은 장점을 제공합니다.
- 동적문 캐시 방지
- 정적 SQL 사용은 동적 SQL을 사용하는 애플리케이션의 성능을 향상시켜 DB2의 동적문 캐시 경쟁을 줄입니다.
- 액세스 경로 일관성
- 정적 SQL은 애플리케이션을 실행하기 전에 액세스 경로를 잠금으로써 응답 시간을 예측 가능하게 하며 안정되게 합니다. 반대로,
동적 SQL의 액세스 경로는 런타임 시 계산됩니다.
- 애플리케이션의 성능 향상 가능성
- 동적 SQL은 애플리케이션의 성능을 향상시킬 수 있습니다.
- 액세스 플랜은 런타임 이전에 판별되므로 런타임 시 SQL문을 준비하지 않아도 됩니다.
- 각 명령문을 준비하고 설명할 필요가 없기 때문에,
클라이언트 애플리케이션과 데이터베이스 서버 간에 네트워크 트래픽이 저하됩니다.
- 정적 SQL은 술어에 사용되는 호스트 변수 또는 매개변수에 대한
데이터 유형을 엄격하게 적용합니다. 엄격하게 적용하므로
데이터베이스에서 입력 데이터가 목표 유형과 일치하게 됩니다.
- 보다 엄격한 보안
- 사용자에게 데이터베이스 오브젝트에서의 특권을 부여하지 않고 DB2® 패키지에서의 EXECUTE 특권을
부여할 수 있습니다.
- 쉬운 패키지 수정
- DB2 패키지를 버전화하여
이전의 좋은 액세스 경로를 유실하지 않고 패키지를 리바인드할 수 있습니다.
워크벤치를 사용하면 다음 기능의 장점을
얻을 수 있습니다.
- JPA 프로젝트의 자동 구성
- 사용자 애플리케이션을 포함하는 JPA
프로젝트를 작성한 후, pureQueryXML 파일을 생성하고
해당 파일에 있는 SQL문을 바인드하기 위한 지원을 사용할 수 있습니다.
이 지원을 사용할 때 워크벤치는 필수
JAR 파일을 프로젝트의 빌드 경로에 추가합니다.
워크벤치는 또한 Default.bindProps 파일도 작성합니다. SQL문을
패키지로 바인드하기 위한 옵션을 설정하려면 이 파일을 사용하십시오.
두 개 이상의 pureQueryXML 파일을 생성하는 경우 파일마다 이 옵션을
설정할 수 있습니다.
Default.bindProps 파일의 이름은 바꾸지 마십시오.
캡처된 SQL문을 바인드할 때 워크벤치는 바인드 옵션이
이 이름의 파일에 있을 것으로 예상합니다.
- 다른 데이터베이스에 대해 바인드하기 위한 쉬운 연결 전환
- pureQueryXML 파일에 있는 SQL문을 바인드할 때
Java™ 프로젝트와 연관되는 데이터베이스나
다른 데이터베이스에 대해 바인드할 수 있습니다.
- pureQueryXML 편집기
- 이 편집기를 사용하여 pureQueryXML 파일에서 SQL문을
삭제할 수 있습니다. 또한 애플리케이션 코드를 변경하지 않고 개별적인 SQL문을
성능이 최적화된 명령문으로 바꿀 수도 있습니다.
- 작업하는 오브젝트 사이의 관계를 보기 위한
SQL 아웃라인 보기
- SQL문 사이의 관계, 사용자 스펙을 기초로 워크벤치에서 제시되거나 작성된
DB2 패키지, SQL문을
포함하는 Java 파일,
명령문이 액세스하거나 참조하는 데이터베이스 오브젝트를 보려면
이 보기를 사용하십시오.
- SQL문을 작성하고 유효성을 확인하기 위한 지원을
포함하는 Java 편집기
- 프로젝트에 Java 소스 파일이
포함되는 경우, Java 편집기의
컨텐츠 보조 및 SQL 유효성 확인 기능을 사용하여 SQL문을 작성하고 편집할 수 있습니다.