SQLJ에 대한 응용프로그램 성능

SQLJ가 사용하는 정적 SQL은 흔히 JDBC가 사용하는 동적 SQL보다 더 빨리 실행될 수 있습니다.

SQL 문을 처리하려면 데이터베이스 서버가 다음 단계를 수행해야 합니다.

  1. SQL 문의 구문 오류를 검사하고 결과로 얻은 오류 메시지를 생성합니다.
  2. 명령문에 데이터베이스 오브젝트가 있고 해당하는 데이터 유형이 있는지 확인합니다.
  3. SQL 문의 구문을 최적화하고 명령문에 필요한 데이터를 읽거나 쓰기 위한 최적의 액세스 경로를 판별합니다. 단순 SQL 문의 최적화는 단순할 수 있지만, 많은 테이블의 많은 색인을 처리하는 복합 SQL 문의 최적화 프로세스는 다수의 옵션을 포함할 수 있습니다.
  4. SQL 문을 실행합니다.

동적 SQL이 있는 경우, 데이터베이스 서버는 런타임 시 각 SQL 문에 이 단계를 반복합니다(일부 서버는 반복적으로 실행되는 동적 SQL 문에 대해 처음 두 단계의 결과를 캐시할 수 있습니다). 이 단계와 연관된 처리는 동적 SQL의 성능에 영향을 줍니다.

정적 SQL이 있는 경우, 예비 작업의 대부분이 디자인 시간에 수행됩니다. Workbench가 SQLJ 파일을 빌드할 때마다 SQLJ 변환기는 구문 및 일관성 검사를 수행하고 SQLJ 파일에 해당하는 Java™ 소스 파일을 작성합니다. Workbench의 마법사를 사용하여 SQLJ 사용자 정의 스크립트를 작성하고 실행할 수 있습니다. 사용자 정의 스크립트는 데이터베이스에 Java 클래스를 바인드하는 정적 SQL 문에 대한 정보를 포함하는 패키지를 작성합니다. 이 경우에는 응용프로그램을 실행할 때 예비 작업이 완료되므로 성능이 향상될 수 있습니다.

관련 개념
SQLJ에 대한 소개
피드백
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.