Backup a single table with its data from a database in sql server 2008

l7mqbcuq  于 2023-06-21  发布在  SQL Server
关注(0)|答案(7)|浏览(216)

I want to get a backup of a single table with its data from a database in SQL Server using a script.

How can I do that?

qkf9rpyu

qkf9rpyu1#

SELECT * INTO mytable_backup FROM mytable

This makes a copy of table mytable , and every row in it, called mytable_backup . It will not copy any indices, constraints, etc., just the structure and data.

(Note that this will not work if you have an existing table named mytable_backup , so if you want to use this code regularly (for example, to backup daily or monthly), you'll need to run drop mytable_backup first).

ghhkc1vu

ghhkc1vu2#

You can use the "Generate script for database objects" feature on SSMS.

  1. Right click on the target database
  2. Select Tasks > Generate Scripts
  3. Choose desired table or specific object
  4. Hit the Advanced button
  5. Under General, choose value on the Types of data to script. You can select Data only, Schema only, and Schema and data. Schema and data includes both table creation and actual data on the generated script.
  6. Click Next until wizard is done
jum4pzuy

jum4pzuy3#

There are many ways you can take back of table.

  1. BCP (BULK COPY PROGRAM)
  2. Generate Table Script with data
  3. Make a copy of table using SELECT INTO, example here
  4. SAVE Table Data Directly in a Flat file
  5. Export Data using SSIS to any destination
lzfw57am

lzfw57am4#

You can create table script along with its data using following steps:

  1. Right click on the database.
  2. Select Tasks > Generate scripts ...
  3. Click next.
  4. Click next.
  5. In Table/View Options, set Script Data to True; then click next.
  6. Select the Tables checkbox and click next.
  7. Select your table name and click next.
  8. Click next until the wizard is done.

For more information, see Eric Johnson's blog.

niknxzdl

niknxzdl5#

Put the table in its own filegroup. You can then use regular SQL Server built in backup to backup the filegroup in which in effect backs up the table.

To backup a filegroup see: https://learn.microsoft.com/en-us/sql/relational-databases/backup-restore/back-up-files-and-filegroups-sql-server

To create a table on a non-default filegroup (its easy) see: Create a table on a filegroup other than the default

zour9fqk

zour9fqk6#

Another approach you can take if you need to back up a single table out of multiple tables in a database is:

  1. Generate script of specific table(s) from a database (Right-click database, click Task > Generate Scripts...
  2. Run the script in the query editor. You must change/add the first line (USE DatabaseName) in the script to a new database, to avoid getting the "Database already exists" error.
  3. Right-click on the newly created database, and click on Task > Back Up... The backup will contain the selected table(s) from the original database.
dy2hfwbg

dy2hfwbg7#

To get a copy in a file on the local file-system, this rickety utility from the Windows start button menu worked: "C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn\DTSWizard.exe"

相关问题