반응형

쿼리 결과를 텍스트로 뽑아내는 것 까지는 성공했는데, ANSI 인코딩으로 파일이 만들어지는 바람에,

텍스트에 한글이 포함된 경우 해당 텍스트를 받아야하는 로그 서버에서 인코딩 에러가 발생을 하였다.

 

utf-8로 인코딩을 위해 sqlcmd의 옵션들을 검토하다가 해당 옵션을 발견함!


sqlcmd -E -o "output할 파일의 절대경로" -Q "실행할 쿼리" -f 65001 -h-1 -W

 

[옵션에 대한 설명]

-o : output할 파일명 (가급적 절대경로)

-Q : 실행할 쿼리 (SP도 가능함)

-f 65001 : 이것이 파일로 output하면서 ANSI를 utf-8로 변환해주는 옵션이다.

-h-1 : sqlcmd로 쿼리 결과를 파일로 뽑아낼 경우 상단에 ----------------- 가 붙는다. 이걸 제거해주는 역할

-W : sqlcmd로 쿼리 결과를 파일로 뽑는 경우 어마어마하게 공백이 추가되어 쓸데 없이 byte수가 늘어난다. 공백을 제거해주는 역할을 한다.

반응형
,