2007년 4월 20일 금요일

JTDS +MSSQL200

JDBC드라이버(JTDS)를 사용해 SQL서버 2000에 커넥션을 맺고 쿼리를 실행할경우
PreparedStatement 를 사용하게 될경우 SQL서버 내부에서 실행된 쿼리를 프로시저 화 하고
실행하게 되기때문에 쿼리응답속도가 상당히 저하 되게 된다.
이런경우 Statement 로 대체를 하거나 프로시저를 만들어 놓고 프로시저를 콜하는 방식으로
수정하는 것이 바람직하다

JTDS드라이버를 사용하는 경우
prepareSQL=0 옵션과 (PreparedStatement를 사용하지 않게 됨으로 내부적으로 프로시저를 생성하지 않게 됨)  sendStringParametersAsUnicode=false 옵션(쿼리에 파라미터 값들을 유니코드가 아닌 값으로 넘겨주게 됨 으로 인덱스를 타게 됨) 을 지정해 주어야 한다.
http://www.sql-server-performance.com/ks_java_drivers.asp
http://bumaround.wordpress.com/2007/03/10/performance-tips-sql-server-2000-java-hibernate-jtds-driver/

.

댓글 없음: