Sql Server Management Studio에서 헤더를 사용하여 결과 저장


183

SQL Server Management Studio를 사용하고 있습니다.

쿼리 결과를 Excel 파일로 저장하고 싶습니다.

"다른 이름으로 저장"을 선택한 다음 Excel에서 열 수있는 CSV 파일로 저장합니다. 열 머리글이 누락 된 것을 제외하고는 모두 좋았습니다. 어떻게 내보내는 아이디어가 있습니까?

답변:


274

Tools> Options> Query Results> SQL Server> Results to Text (or Grid if you want)>Include columns headers in the result set

이 옵션을 변경 한 후 SSMS를 닫았다가 다시 열어야 할 수도 있습니다.

SQL 편집기 도구 모음에서 SSMS를 다시 시작하지 않고도 파일에 저장을 선택할 수 있습니다


35
+1, 이것을 테스트하고 작동합니다 : 도구-> 옵션-> 쿼리 결과-> SQL Server-> 결과를 ​​Grid로 보낸 다음 '결과를 복사하거나 저장할 때 열 머리글 포함'을 선택하십시오.
Jeff Ogata

46
이것은 SSMS 2012에서 작동 합니다. 설정을 적용하려면 SSMS를 다시 시작해야합니다 .
SliverNinja-MSFT

17
확인하려면이 옵션을 적용하려면 SSMS를 닫았다가 다시 열어야합니다.
Christopher King

8
Christopher가 말했듯이 변경 내용을 적용하려면 SSMS를 다시 시작해야합니다.
Rob

8
SSMS 2016의 경우 이러한 변경 사항을 적용하려면 다시 시작해야합니다.
Chris Haas

36

내보내기 마법사를 사용해보십시오. 이 예에서는 전체 테이블을 선택하지만 쿼리를 쉽게 지정할 수 있습니다.

여기에 이미지 설명을 입력하십시오

여기에 이미지 설명을 입력하십시오

여기에 이미지 설명을 입력하십시오

여기에 이미지 설명을 입력하십시오

(여기서 검색어를 지정할 수도 있습니다)

여기에 이미지 설명을 입력하십시오

여기에 이미지 설명을 입력하십시오

여기에 이미지 설명을 입력하십시오

여기에 이미지 설명을 입력하십시오

여기에 이미지 설명을 입력하십시오


4
고마워 그러나 이것은 테이블입니다. 내 질문은 질문이었습니다.
dublintech

1
네 번째 단계 인 "테이블 복사 또는 쿼리 지정"에서 쿼리를 지정할 수도 있습니다.
John Dewey

다른 접근 방식을 모두 시도했지만 혼합 데이터 유형에 적합한 유일한 방법입니다.
DOK

3
이것이 작동하는 동안 그것은 매우 고통스럽고 시간이 많이 걸립니다. SQL Server와 Excel은 모두 MS 제품이므로 2013 년에 간단한 내보내기 버튼이 없다는 것은 놀라운 일입니다!
Andre

34

또 다른 가능성은 클립 보드를 사용하여 결과를 복사하여 Excel에 직접 붙여 넣는 것입니다. 데이터에 따라 때로는 예기치 않은 결과가 발생할 수 있으므로 일반 유형 Excel 열에주의하십시오. CTL-A결과 표의 아무 곳이나 마우스 오른쪽 단추로 클릭하십시오.

여기에 이미지 설명을 입력하십시오

원하지 않는 변환을 수행하는 Excel의 일반 형식에 문제가 있으면 붙여 넣기 전에 형식을 "텍스트"로 변경하기 전에 Excel에서 빈 열을 선택하십시오.


Excel 형식을 제외하고는 훌륭합니다. 선행 0이있는 숫자 (예 : 휴대폰 번호)는 Excel에서 0을 떨어 뜨립니다. 대기 중에 다른 형식 문제도 있습니다. 자신의 위험에 따라 사용하십시오. 감사합니다 Microsoft!
e_i_pi

12

적어도 SQL Server 2012에서는 쿼리 창을 마우스 오른쪽 단추로 클릭하고 쿼리 옵션을 선택할 수 있습니다. 여기에서 그리드 및 / 또는 텍스트에 헤더 포함을 선택하고 SSMS를 다시 시작하지 않고 다른 이름으로 저장이 원하는 방식으로 작동하도록 할 수 있습니다.

새 쿼리 창이 기본적으로 이러한 설정을 사용하도록하려면 메뉴 표시 줄의 도구-> 옵션에서 여전히 변경해야합니다.


7

Visual Studio에도 동일한 문제가 있습니다. 해결 방법은 다음과 같습니다.

이동 :

Tools > Options > SQL Server Tools > Transact-SQL Editor > Query Results > Results To Grid

이제 "결과를 복사하거나 저장할 때 열 머리글 포함"확인란을 클릭하십시오.


6

왼쪽 상단에서을 클릭하여 결과를 선택하고 마우스 오른쪽 버튼을 클릭 한 후 "헤더로 복사"를 선택하십시오. 엑셀로 붙여 넣기. 끝난!


4

SQL Server Management Studio (SSMS)에서 여는 모든 향후 쿼리 세션에 대해이 옵션을 영구적으로 설정하려는 경우 @Diego의 허용되는 답변을 변경하도록 권고 된 설정이 적합 할 수 있습니다. 일반적으로 그렇지 않습니다 . 또한이 설정을 변경하려면 SSMS (SQL Server Management Studio) 응용 프로그램을 다시 시작해야합니다. 저장되지 않은 열린 쿼리 세션 창이 많고 디버깅 중일 경우에도 이는 좋지 않은 경험입니다.

SQL Server는 매우 빠르고 편리하며 편리하게 세션별로 변경하는 매우 매끄러운 옵션을 제공합니다 . 쿼리 옵션 창을 사용하여 아래 단계를 자세히 설명합니다.

  1. 쿼리 편집기 창에서 마우스 오른쪽 버튼을 클릭하고 Query Options...아래 그림과 같이 상황에 맞는 메뉴 하단을 클릭하십시오 .

여기에 이미지 설명을 입력하십시오

  1. 왼쪽 탐색 창에서 Results> Grid를 선택하십시오 . 체크 Include column headers when copying or saving the results아래와 같이 오른쪽 창에서 체크 박스를 :

여기에 이미지 설명을 입력하십시오

그게 다야. 현재 세션은 SSMS를 다시 시작하지 않고도 설정을 즉시 적용합니다. 또한이 설정은 향후 세션으로 전파되지 않습니다. 세션별로이 설정을 효과적으로 변경하면 노이즈가 훨씬 줄어 듭니다.


2

결과를 내보낼 때 SSMS가 CSV 구분 기호를 올바르게 이스케이프 처리하는 방법을 찾을 때 여기에 왔습니다.

뭔지 맞춰봐? -이것은 실제로 옵션이며 기본적으로 선택되어 있지 않습니다. 따라서 기본적으로 CSV 파일이 손상되어 내보내기가 크거나 데이터가 정상적으로 쉼표가없는 경우 깨달을 수 있습니다-CSV를 내보내려면 확인란을 클릭해야합니다. 바르게!

나에게 이것은 일반적으로 소프트웨어에 대한 마이크로 소프트의 접근 방식에 대한 엄청나게 바보 같은 디자인 선택과 적절한 은유처럼 보인다.

그러나 누군가 내가이 옵션이 존재하는 유효한 실제 이유를 제시 할 수 있다면 (즉, 유용한 실제 시나리오) 응답자가 선택한 자선 단체에 100 달러를 기꺼이 기부 할 것입니다.


2

SQL Server 2014 Management Studio에서 설정은 다음과 같습니다.

도구> 옵션> 쿼리 결과> SQL Server> 텍스트 결과> 결과 집합에 열 머리글 포함


0

나는 또한 같은 문제에 직면 해있다. 쿼리 창에서 마우스 오른쪽 버튼을 클릭하고 쿼리 옵션을 선택하십시오. 그러나 머리글 행은 출력 CSV 파일에 표시되지 않습니다.

그런 다음 서버에서 로그 오프하고 다시 로그인하여 스크립트를 실행하십시오. 그런 다음 효과가있었습니다.


Include column headers when copying or saving the results옵션을 변경하려고 했습니까 ? 이 옵션은 창의 왼쪽 탐색 창에서 Results> 를 선택하면 표시됩니다 . GridQuery Options
RBT
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.