[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More


Export Table Data in SQL Server Management Studio

Published on
10,636 Points
Last Modified:
Dirk Strauss
Software Developer, Microsoft MVP, Coffee Drinker, Author and Professional Grouch. dirkstrauss@protonmail.com
It is possible to export the data of a SQL Table in SSMS and generate INSERT statements. It's neatly tucked away in the generate scripts option of a database.

Did you know that you can generate INSERT scripts form your data tables in SQL Server Management Studio? Consider the OrderStatus table in the image below:

If we wanted to create INSERT scripts from the data in the table, right-click on the database name and select Tasks > Generate Scripts... from the context menu.

The Generate and Publish Scripts window will open. If you want to generate scripts for several objects, you can do so. Here, I just want the INSERT scripts for a single table. So I click on Select specific database objects and check the OrderStatus table. Then click on the Next> button.

The next screen allows you to output the data to a file, clipboard or new query window. Here I will just output it to a new query window. Before clicking Next> , you need to click on the Advanced button.

Doing this will open up the Advanced Scripting Options. Go ahead and change the selection for Types of data to script to Data only and click on OK. Then click Next> until you complete the wizard and finally click Finish.

USE [TestDatabase]
SET IDENTITY_INSERT [dbo].[OrderStatus] ON 

INSERT [dbo].[OrderStatus] ([recId], [OrderStatusText], [OrderStatusID]) VALUES (1, N'Order Placed', 0)
INSERT [dbo].[OrderStatus] ([recId], [OrderStatusText], [OrderStatusID]) VALUES (2, N'Check funds', 1)
INSERT [dbo].[OrderStatus] ([recId], [OrderStatusText], [OrderStatusID]) VALUES (3, N'Waiting for Order Approval', 2)
INSERT [dbo].[OrderStatus] ([recId], [OrderStatusText], [OrderStatusID]) VALUES (4, N'Waiting to Print Label', 3)
INSERT [dbo].[OrderStatus] ([recId], [OrderStatusText], [OrderStatusID]) VALUES (5, N'Waiting to Print Packing Slip', 4)
INSERT [dbo].[OrderStatus] ([recId], [OrderStatusText], [OrderStatusID]) VALUES (6, N'Waiting to Charge Credit Card', 5)
INSERT [dbo].[OrderStatus] ([recId], [OrderStatusText], [OrderStatusID]) VALUES (7, N'Waiting to Send email', 6)
INSERT [dbo].[OrderStatus] ([recId], [OrderStatusText], [OrderStatusID]) VALUES (8, N'Waiting Completed', 7)
INSERT [dbo].[OrderStatus] ([recId], [OrderStatusText], [OrderStatusID]) VALUES (9, N'Order Completed', 8)

The INSERT script for the data of the table is generated for you.

1 Comment

Expert Comment

by:Gregorio Méndez
Mr. Strauss, what a good tip, thanks a lot for your contribution

Featured Post

Become a CompTIA Certified Healthcare IT Tech

This course will help prep you to earn the CompTIA Healthcare IT Technician certification showing that you have the knowledge and skills needed to succeed in installing, managing, and troubleshooting IT systems in medical and clinical settings.

Join & Write a Comment

This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.
Via a live example, show how to set up a backup for SQL Server using a Maintenance Plan and how to schedule the job into SQL Server Agent.

Keep in touch with Experts Exchange

Tech news and trends delivered to your inbox every month