상세 컨텐츠

본문 제목

탭문자 확인 및 제거

DataBase/SQL Server

by 탑~! 2021. 1. 4. 16:15

본문

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)' 로 적으면 안댄다.

 

어쨋든 이렇게 한건 해결...



출처: https://saddev.tistory.com/49?category=204062 [DevStory]

관련글 더보기