Notice
Recent Posts
Recent Comments
뽁
SQL Server sendStringParametersAsUnicode=false 본문
SQL DB에서는 JDBC string type을 NVARCHAR 로 처리함.
그래서
varchar 로 된 컬럼에 대한 값이 string 으로 될 경우
묵시적 형변환이 일어나 Index 를 타지 않고 속도가 느려짐.
예)
test_table.com_id varchar(10)이고
index 가 생성되어 있음.
SELECT *
FROM test_table
WHERE com_id = v_string
;
이 쿼리에서
com_id 는 varchar, v_string은 nvarchar.
com_id, v_string 의 data type을 맞춰주기 위해 둘 중에 하나를 변경해야 하는데
nvarchar 가 varchar 보다 dataType 우선순위가 높기 때문에
com_id 가 navarchar 로 변환이 됨.
이걸 방지하기 위해
String type 의 parameter 를 기본 VARCHAR 로 매핑하고 싶다면 또는 해야한다면, JDBC URL 에
sendStringParsendStringParametersAsUnicode=false 를 추가하면 된다.
참고사이트
https://woowabros.github.io/study/2019/01/25/sqlserver-jdbc-driver.html
'IT Cafe+ > MS-SQL' 카테고리의 다른 글
DB2 TO MSSQL 데이터 이관 방법, MSSQL BCP 이용 (0) | 2020.08.09 |
---|---|
[MSSQL] 세계 시간(타임존, Time zone) 계산 함수(function) (0) | 2019.02.21 |
[MSSQL] 다국어 사용을 위한 방법. National JDBC (0) | 2018.12.26 |
[MSSQL] 다국어 - INSERT 시 N'컬럼값' 사용 (0) | 2018.12.12 |
[MSSQL] PIVOT을 이용한 행을 열로 만들기 (0) | 2016.08.17 |
Comments