我正在寻找一种方法来做一些类似于从SQL Server的MySQL转储。我需要能够选择表并导出模式和数据(或者我可以通过SQL Server Management Studio导出模式并以某种方式单独导出数据)。
我需要这些数据能够转身,回到SQL Server,所以它需要维护guid /唯一标识符和其他列类型。
有人知道有什么好工具吗?
BCP可以将您的数据转储到一个文件中,然后在SQL Server Management Studio中,右键单击表,选择“脚本表作为”,然后选择“创建到”,然后选择“文件…”,它将生成一个完整的表脚本。
在SQL Server Management Studio中,你可以右键点击你的数据库并选择:
Tasks -> Generate Scripts
然后简单地通过向导进行操作。当提示选择脚本选项时,请确保将“Script Data”设置为TRUE。
进一步阅读:
查看SSMS工具包。它工作在管理工作室2005年和2008年。有一个生成插入语句的选项,我发现它有助于将少量数据从一个系统转移到另一个系统。
使用此选项,您将不得不单独编写DDL脚本。
SqlPubWiz.exe(对我来说,它在C:\Program Files (x86)\Microsoft SQL Server\90\Tools\Publishing\1.2>)
运行它时不带任何向导参数。给它在命令行上运行的参数。
SqlPubWiz.exe script -C "<ConnectionString>" <OutputFile>
如果你想脚本所有的表行,那么 使用Daniel Vassallo所描述的生成脚本。你不会错的
我花了很长时间在SQL Management Studio 2012中找到这个选项,但我最终找到了它。该选项隐藏在下面的屏幕中的Advanced按钮中。
我一直认为这只是包含了文件生成的高级选项,因为这是它旁边的内容,但事实证明微软的某些人在这种情况下真的很不擅长UI设计。HTH有人来这个线程像我一样。
这是执行这项任务的最佳工具。您可以生成一个脚本,该脚本将从数据库中构建任何您希望的表,以及在这些表中插入数据(据我所知,您必须导出所选表中的所有数据)。
要做到这一点,请遵循以下步骤:
要恢复数据库,只需创建一个新数据库,并将生成脚本的第一行更改为USE [Your.New.Database.Name],然后执行。现在,新数据库将拥有从原始数据库中选择的所有表和数据。
USE [Your.New.Database.Name]