Copy Column Headers and Query Results in SQL Server Management Studio

Problem

One of the nice features with SQL Server Management Studio is the ability to create result sets from queries into a grid result set. This data can then be copied and pasted in other application such as Excel. The downside to saving the results in a grid is that the column headers don’t get copied along with the data. To get around this you could query the data in the text format, so you could copy the results along with the column headers, but then you are faced with formatting issues.

Solution

You have the ability to copy the column headers along with the data results with two different options.

SQL Server Management Studio Query Options Setting

First is a query options setting. To access this setting from SQL Server Management Studio, select Query > Query Options from the menus and you will see the following screen:

ssms copy headers

Select the Results / Grid setting and check “Include column headers when copying or saving the results”. Once this is set whatever query you run and then if you select the results and copy and paste into another application the column headers are also copied along with the data.

Here is a sample query:

SELECT TOP 5 name, id, crdate FROM dbo.sysobjects

Results copied with column headers off:

sysrowsetcolumns410/14/05 1:36
sysrowsets510/14/05 1:36
sysallocunits710/14/05 1:36
sysfiles184/8/03 9:13
syshobtcolumns1310/14/05 1:36

Results copied with the column headers on:

nameidcrdate
sysrowsetcolumns410/14/05 1:36
sysrowsets510/14/05 1:36
sysallocunits710/14/05 1:36
sysfiles184/8/03 9:13
syshobtcolumns1310/14/05 1:36

SSMS Save Results with Headers

A second way to have SSMS save results with headers is to right click on the grid result set and select Copy with Headers or use Ctrl+Shift+C as shown below.

ssms copy headers

Next Steps

Leave a Reply

Your email address will not be published. Required fields are marked *