我正在寻找一种方法来做一些类似于从SQL Server的MySQL转储。我需要能够选择表并导出模式和数据(或者我可以通过SQL Server Management Studio导出模式并以某种方式单独导出数据)。
我需要这些数据能够转身,回到SQL Server,所以它需要维护guid /唯一标识符和其他列类型。
有人知道有什么好工具吗?
我正在寻找一种方法来做一些类似于从SQL Server的MySQL转储。我需要能够选择表并导出模式和数据(或者我可以通过SQL Server Management Studio导出模式并以某种方式单独导出数据)。
我需要这些数据能够转身,回到SQL Server,所以它需要维护guid /唯一标识符和其他列类型。
有人知道有什么好工具吗?
当前回答
SQL Server Management Studio
这是执行这项任务的最佳工具。您可以生成一个脚本,该脚本将从数据库中构建任何您希望的表,以及在这些表中插入数据(据我所知,您必须导出所选表中的所有数据)。
要做到这一点,请遵循以下步骤:
Right-click on your database and select Tasks > Generate Scripts In the Generate and Publish Scripts wizard, select the "Select specific database objects" option Expand the "Tables" tree and select all of the tables you wish to export the scheme and data for, then click Next In the next screen choose how you wish to save the script (the Output Type must remain set as "Save scripts to a specific location"), then click the Advanced button in the top right corner In the newly opened window, under the General section is a setting called "Types of data to script", set this to "Scheme and data" and click OK Click Next, review the export summary and click Next again. This will generate the script to your selected destination.
要恢复数据库,只需创建一个新数据库,并将生成的脚本的第一行更改为USE [your . new . database]。Name],然后执行。现在,新数据库将拥有从原始数据库中选择的所有表和数据。
其他回答
我知道这个问题已经有人回答了,但我在这里提出一个警告。 我们最近从客户端收到一个数据库,该数据库有一个循环外键引用。SQL Server脚本生成器拒绝为循环引用的数据库生成数据。
如果您希望脚本化所有表行,那么 使用Daniel Vassallo所描述的生成脚本。你不会错的
其他的 使用第三方工具,如ApexSQL Script或SSMS Toolpack,用于更高级的脚本,包括一些预处理,选择性脚本等。
SqlPubWiz.exe(对我来说,它在C:\Program Files (x86)\Microsoft SQL Server\90\Tools\Publishing\1.2>)
运行它时不带任何向导参数。给它在命令行上运行的参数。
SqlPubWiz.exe script -C "<ConnectionString>" <OutputFile>
检查SSMS工具包。它工作在管理工作室2005年和2008年。有一个生成插入语句的选项,我发现它有助于将少量数据从一个系统转移到另一个系统。
使用此选项,您将不得不单独编写DDL脚本。
在SQL Server Management Studio中,你可以右键点击你的数据库并选择:
Tasks -> Generate Scripts
然后简单地通过向导进行操作。当提示选择脚本选项时,请确保将“Script Data”设置为TRUE。
SQL Server 2008 R2
进一步阅读:
Robert Burke: SQL Server 2005 -编写数据库脚本