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 사용자 정의 스크립트를 작성하고 실행할 수 있습니다. 사용자 정의 스크립트가 정적 SQL문에 대한 정보를 포함하는 패키지를 작성하여 Java 클래스를 데이터베이스에 바인드하십시오. 그런 다음 애플리케이션 실행 시 예비 작업이 완료되면 더 나은 성능을 가져올 수 있습니다.


피드백