我希望使用脚本从 SQLServer 中的数据库获取单个表及其数据的备份。
我该怎么做?
您可以使用以下步骤创建表脚本及其数据:
有关更多信息,请参见 埃里克 · 约翰逊的博客。
有很多方法可以收回桌子。
SELECT * INTO mytable_backup FROM mytable
这样就复制了表 mytable以及表中的每一行,称为 mytable_backup。它不会复制任何索引、约束等,只复制结构和数据。
mytable
mytable_backup
请注意,如果您有一个名为 mytable_backup的现有表,那么这种方法将不起作用,因此如果您希望定期使用此代码(例如,每天或每月进行备份) ,则需要首先运行 drop mytable_backup。
drop mytable_backup
为了在本地文件系统的文件中获得一个副本,这个来自 Windows 开始按钮菜单的摇摆不定的实用程序可以工作: “ c: 程序文件(x86) Microsoft SQL Server 110 DTS Binn DTSWizard.exe”
如果需要从数据库中的多个表中备份单个表,可以采用的另一种方法是:
从数据库生成特定表的脚本(右键单击数据库,单击 Task > Generate Scripts..。
在查询编辑器中运行脚本。您必须将脚本中的第一行(USEDatabaseName)更改/添加到新数据库中,以避免出现“ Databasealready vis”错误。
右键单击新创建的数据库,然后单击 Task > Back Up..。 备份将包含来自原始数据库的选定表
将表放在其自己的文件组中。然后可以使用内置的常规 SQLServer 备份文件组,该文件组实际上备份了表。
要备份文件组,请参见: Https://learn.microsoft.com/en-us/sql/relational-databases/backup-restore/back-up-files-and-filegroups-sql-server
要在非默认文件组上创建表(很简单) ,请参见: 在默认值以外的文件组上创建表
您可以在 SSMS 上使用“ Generate script for database object”特性。