본문 바로가기

Database

MSSQL과 Mybatis(iBatis) 쿼리 성능 속도 문제

파라미터를 PreparedStatement(#{...}, #...#) 형태로 사용할 경우 


java의 String 객체가 MSSQL의 컬럼 타입이 NVARCHAR 이면 형식이 같아 상관없다.


MSSQL의 컬럼 타입이 VARCHAR일 경우 타입 변환이 일어나 쿼리의 속도가 느려지게 된다.


MSSQL의 테이블에 컬럼 타입이 NVARCHAR일 경우 문제가 없지만 VARCHAR일 경우 문제가 된다.


컬럼에 한글이 들어가지 않을 경우 jdbc url에 sendStringParametersAsUnicode=false 을 뒤에 지정해줄 수 있다.


아니면 파라미터를 Statement(${...}, $...$) 형태로 사용해야한다.