2014-04-01 2 views
0

SQL 쿼리를 실행하는 파일을 .bat으로 만들고 결과를 메모장이 열리는 .txt 파일로 표시합니다.SQL 쿼리 일괄 처리 파일에서 너무 많은 텍스트 간격

모든 것이 잘 실행되지만 결과가 .txt 파일에 표시 될 때 행 사이에 너무 많은 간격이 있습니다.

여분의 간격을 제거하려면 어떻게해야합니까? 당신의 Query3.sql 내부

sqlcmd -S SQLServer -i c:\scripts\Query3.sql -U user -P pass -o outputfile.txt 
@notepad outputfile.txt 

답변

1

-W 매개 변수를 sqlcmd.exe으로 전달하십시오.

-W
이 옵션은 컬럼에서 트레일 링 스페이스를 제거한다. 다른 응용 프로그램으로 내보낼 데이터를 준비 할 때이 옵션을 -s 옵션과 함께 사용하십시오. -y 또는 -Y 옵션과 함께 사용할 수 없습니다.

-http://msdn.microsoft.com/en-us/library/ms162773.aspx

+0

좋아! -W 명령이 저에게 효과적이었습니다. 내가 지금 가지고있는 유일한 문제는 그것이 실제로 너무 가깝다는 것입니다. 그들 사이에 3 칸이나 4 칸 같은 방법으로 나가려면 어떻게해야합니까? – user3487011

+0

그건 좀 어렵습니다. '-s'를 사용하여 출력에서 ​​정상적으로 발견되지 않을 분리 문자를 지정하고 (아마도'¬' 또는 무엇인가), (여하튼) 그것을 여러 공백으로 대체 할 수 있습니다. 일괄 적으로 문자열을 대체 할 수는 있지만 재미는 없습니다. 안타깝게도 단 하나의 * 문자 만 열 구분자로 지정할 수 있으므로'-s ""'는 작동하지 않습니다. – Blorgbeard

0

내가

RTRIM 파일 다음 명령을 사용합니다 (LTRIM (필드))

:

내가 사용하고 배치 코드

filed는 SQL에서 가져 오는 필드입니다. "rtrim"및 "ltrim"함수는 문제 일 수있는 공백을 제거합니다.

관련 문제