DataBase/SQL Server
탭문자 확인 및 제거
탑~!
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]