반응형

DB 툴에서는 SELECT 문을 조회 했을 때 아무런 에러가 없었는데, xml에서 등록된 쿼리문을 실행할 때 에러가 발생했다. 에러 내용은 아래와 같다.

 

com.microsoft.sqlserver.jdbc.SQLServerException: 인덱스 3이(가) 범위를 벗어났습니다.

com.microsoft.sqlserver.jdbc.SQLServerException: 인덱스 3이(가) 범위를 벗어났습니다.

 

IBatis나 MyBatis를 사용할 때 주석을 -- 이것을 쓰게 되면 저런 에러가 발생하는 경우도 많다. DB 툴에서는 -- 주석을 사용하면 주석이 잘 먹히지만, xml에서 쿼리를 불러와서 실행하면 --을 잘못 인식하거나 그럴 경우 에러가 발생한다. 그래서, xml에서의 주석은 <!-- --> 을 사용하는게 가장 좋다.

 

그래서 확인해야 하는 것은 아래와 같다.

 

솔직히 말해서, 주석을 -- 이거 쓰거나 <!-- --> 이거 쓰거나 큰 상관은 없을것 같은데, 간혹가다가 들여쓰기나 엔터 등 스타일이 다를 때 주석을 하는 경우 특정 쿼리까지 주석이 걸려 문제가 생기는것 같다.

 

오타가 있는지 확인하고, 주석을 -- 이거 대신 <!-- --> 이거를 사용하도록 바꾸는 것이 방법인듯 하다.

반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기