반응형

DB에서 정보를 검색해야 되는데 이상하게 검색이 안된다..

DB가 char(n) 타입이라 데이터 뒤에 공백이 붙는다.
예를들어 ‘aaaa’ 라는 데이터를 넣으면 ‘aaaa           ‘ 라는 형식으로 입력이 된다.(char 니까 당연…)
하지만 검색할때는 ‘aaaa’, ‘aaaa ‘, ‘aaaa     ‘… 다 되는게 정상이다…
그런데 이상하게 검색이 안되는 넘이 있었다…

문제의 발단은 txt 파일에서 정보를 읽어서 자동으로 인설트 시키는 기능이 있었는데 이 txt 파일에 aaaa 뒤에 탭 문자가 들어가 있었다.
실제로 메모장으로 열어서 커서를 이동해 보면 탭 문자 간격만큼 이동한다..
이거 때문에 삽질 하다가 수정한 결과를 적어 본다.

우선 MSSQL 에서 Tab 문자는  CHAR(9) 다.
줄바꿈 문자는 CHAR(10) 혹은 CHAR(10)+CHAR(13) …

해결..
UPDATE [TABLE] SET value = REPLACE(value, CHAR(9), ”)  

여기서CHAR(9) 는 문자열이 아니므로 ‘CHAR(9)’ 로 적으면 안댄다.

반응형

+ Recent posts