有什么方法可以将Microsoft SQL Server数据库导出到sql脚本?
我正在寻找一种行为类似于mysqldump的东西,使用一个数据库名称,并生成一个脚本来重新创建所有表,存储过程,重新插入所有数据等。
我已经看过http://vyaskn.tripod.com/code.htm#inserts,但是理想情况下,我希望有一些东西可以重新创建所有内容(而不仅仅是数据),而这些步骤可以一步一步生成最终的脚本。
有什么方法可以将Microsoft SQL Server数据库导出到sql脚本?
我正在寻找一种行为类似于mysqldump的东西,使用一个数据库名称,并生成一个脚本来重新创建所有表,存储过程,重新插入所有数据等。
我已经看过http://vyaskn.tripod.com/code.htm#inserts,但是理想情况下,我希望有一些东西可以重新创建所有内容(而不仅仅是数据),而这些步骤可以一步一步生成最终的脚本。
Answers:
在SQL Server Management Studio中,右键单击数据库,然后选择“任务” /“生成脚本”。按照向导进行操作,您将获得一个脚本,该脚本根据外键以正确的顺序重新创建数据结构。在标题为“设置脚本选项”的向导步骤中,选择“高级”,然后将“脚本的数据类型”选项修改为“架构和数据”
提示:在最后一步中,选择“脚本到新查询窗口”,这样可以更快地工作。
尝试使用Sql Server数据库发布向导。尽管由于依赖关系,您可能需要重新排序脚本以使其一次运行,但是它将包括您的架构和数据。
如果尚未安装2005 SQL XMO对象,则在运行向导时会出现错误。您将需要Microsoft SQL Server 2005管理对象集合
我发现SQL Dumper非常有用。它是免费的,因此您可以尝试一下。它使您可以选择数据库表和列,视图甚至自定义查询的结果作为SQL插入语句。
没有找到合适的工具,我决定创建自己的工具:sqlserverdump命令行实用程序。在http://sqlserverdump.codeplex.com/上进行检查。它将在一个步骤中重新创建模式和数据。
试试DBSourceTools。它旨在脚本化源数据库,然后重新部署到目标数据库。它编写模式和数据脚本。
推荐的解决方案仅适用于sql 2000和2005。如果您要在SQL 2008上执行此操作,
您可以使用SQL 2008来实现,而无需任何其他插件。右键单击数据库,然后选择“任务->生成脚本...”。选择数据库以及要备份的内容。单击下一步,并将“脚本数据”设置为true。
链接中的更多文档:
SQL Server数据库发布向导确实确实是最好的方法。问题是它似乎无法在Windows 7上运行。我必须使用旧计算机来使用它。从积极的方面来说,它可以与旧版SQL Server(例如2000)一起使用。
对于较新的SQL版本和操作系统,此软件可能值得研究:http : //sqlbackupandftp.com/
Ombelt为导出MS SQL Server数据库提供了一个很好的工具。www.ombelt.com
很像其他DB的转储工具。
为我工作。
检查Microsoft SQL Server Schema Dump项目(mssql-schema-dump
位于GitHub的工具)。
用法:
mssqldump -h data-source-host -u username -p password [-d path/for/files] [-c] [-s] [-a] [-b DB1[,DB2[,DB3]]]
导出支持: