Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles / database / SQL-Server

How to Copy a SQL Server Table?

2.22/5 (6 votes)
15 Jul 2012CPOL1 min read 107.4K  
Copy a SQL Server table

Introduction

In this tip, I will show you the various ways of copying a SQL Server table. The first method of copying is the simplest way to copy a table into another (new) table in the same SQL Server database. You have to keep in mind that this way of copying does not copy constraints and indexes. The following illustrates a code template and a sample usage:

SQL
select * into <destination table> from <source table>

Example

SQL
Select * into employee_backup from employee 

We can also select only a few columns into the destination table like below:

SQL
select col1, col2, col3 into <destination table>
from <source table>

Example

SQL
Select empId, empFirstName, empLastName, emgAge into employee_backup
from employee

Use this to copy only the structure of the source table.

SQL
select * into <destination table> from <source table> where 1 = 2

Example

SQL
select * into employee_backup from employee where 1=2

Use this to copy a table across two databases in the same SQL Server instance.

SQL
select * into <destination database.dbo.destination table>
from <source database.dbo.source table>

Example

SQL
select * into Mydatabase2.dbo.employee_backup
from mydatabase1.dbo.employee 

Any one of the following methods can be employed to copy a table into a destination database on a different SQL Server.

  1. Data Transformation Service (DTS) – SQL Server 2000
  2. SQL Server Integration Service (SSIS) – SQL Server 2005
  3. SQL Server “Export Data” task – SQL Server 2000/2005
  4. Create a linked Server of the destination SQL Server on the source SQL Server and then copy the table – SQL Server 2000/ 2005
  5. We can also use sp_generate_inserts to generate data insertion scripts and then run the insert scripts
  6. I almost forgot this ;) you can open the source table , select the row(s), copy (ctrl + C) the row(s), open the destination table and then paste (ctrl + V) the row(s)

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)