[MSSQL] 문자열이나 이진 데이터는 잘립니다.
Database/MSSQL / 2010. 9. 1. 16:05
com.microsoft.sqlserver.jdbc.SQLServerException: 문자열이나 이진 데이터는 잘립니다.
MSSQL 의 오류가 한글로 나오는 것으 좋은데, 저런식으로 퉁쳐서 나오는 오류 때문에 해결하기가 어렵습니다.
위의 오류가 발생한 부분은 update 쿼리로 아래와 같이 구성되어 있었습니다.
(MSSQL + iBatis 를 사용하였습니다.)
UPDATE TEST_TABLE
SET TEST_COL_1 = ISNULL(#test_col_1#, 0)
WHERE IDX = #idx#
SET TEST_COL_1 = ISNULL(#test_col_1#, 0)
WHERE IDX = #idx#
#test_col_1# 의 값이 null 이 아니면 관계가 없는데, null 값으로 들어오면 위의 오류가 발생하는 것이였습니다.
지난 번에 찾았던 꼼수를 이용하여 일단 CAST 를 해보았습니다.
UPDATE TEST_TABLE
SET TEST_COL_1 = ISNULL( CAST( #test_col_1# AS NVARCHAR ), 0)
WHERE IDX = #idx#
SET TEST_COL_1 = ISNULL( CAST( #test_col_1# AS NVARCHAR ), 0)
WHERE IDX = #idx#
=ㅁ=... 문제 없이 동작을 합니다...
쩝... MSSQL 에서 일단 문제가 생기면 CAST 나 CONVERT 신공이 필요한가 봅니다...