Table-level backup

前端 未结 16 1570
孤城傲影
孤城傲影 2020-12-02 06:37

How to take table-level backup (dump) in MS SQL Server 2005/2008?

相关标签:
16条回答
  • 2020-12-02 07:06

    You cannot use the BACKUP DATABASE command to backup a single table, unless of course the table in question is allocated to it's own FILEGROUP.

    What you can do, as you have suggested is Export the table data to a CSV file. Now in order to get the definition of your table you can 'Script out' the CREATE TABLE script.

    You can do this within SQL Server Management Studio, by:

    right clicking Database > Tasks > Generate Script

    You can then select the table you wish to script out and also choose to include any associated objects, such as constraints and indexes.

    in order to get the DATA along with just the schema, you've got to choose Advanced on the set scripting options tab, and in the GENERAL section set the Types of data to script select Schema and Data

    Hope this helps but feel free to contact me directly if you require further assitance.

    0 讨论(0)
  • 2020-12-02 07:09

    I am using the bulk copy utility to achieve table-level backups

    to export:

    bcp.exe "select * from [MyDatabase].dbo.Customer " queryout "Customer.bcp" -N -S localhost -T -E
    

    to import:

    bcp.exe [MyDatabase].dbo.Customer in "Customer.bcp" -N -S localhost -T -E -b 10000
    

    as you can see, you can export based on any query, so you can even do incremental backups with this. Plus, it is scriptable as opposed to the other methods mentioned here that use SSMS.

    0 讨论(0)
  • 2020-12-02 07:09

    If you are looking to be able to restore a table after someone has mistakenly deleted rows from it you could maybe have a look at database snapshots. You could restore the table quite easily (or a subset of the rows) from the snapshot. See http://msdn.microsoft.com/en-us/library/ms175158.aspx

    0 讨论(0)
  • 2020-12-02 07:15

    You can use the free Database Publishing Wizard from Microsoft to generate text files with SQL scripts (CREATE TABLE and INSERT INTO).

    You can create such a file for a single table, and you can "restore" the complete table including the data by simply running the SQL script.

    0 讨论(0)
  • 2020-12-02 07:15

    Every recovery model lets you back up a whole or partial SQL Server database or individual files or filegroups of the database. Table-level backups cannot be created.

    From: Backup Overview (SQL Server)

    0 讨论(0)
  • 2020-12-02 07:17

    If you're looking for something like MySQL's DUMP, then good news: SQL Server 2008 Management Studio added that ability.

    In SSMS, just right-click on the DB in question and select Tasks > Generate Scripts. Then in the 2nd page of the options wizard, make sure to select that you'd like the data scripted as well, and it will generate what amounts to a DUMP file for you.

    0 讨论(0)
提交回复
热议问题