数据库逆向工程安装

时间:2011-12-13 15:07:15

标签: sql sql-server database

我有一个现有的数据库(SQL Server 2008 R2),我的目标是建立一个可以安装我已经拥有的数据库的项目。

即项目将读取架构和数据,并且能够复制现有数据和架构。 此工具需要将数据库信息保存到磁盘,以便我可以在不同的计算机上安装数据库。

我可以使用Visual Studio 2010数据库项目吗? 这是一项简单的任务吗?

(我问的原因是我已经有了这样一个安装我的数据库的项目,但是这个工具很老了(~2000)。 那个旧项目是一个大混乱,它有C#,java,sql,批处理文件和一些第三方工具,并且具有比我当前产品所需的更多功能..)

感谢。

4 个答案:

答案 0 :(得分:1)

使用SQL Server管理对象(SMO)创建源数据库的快照,然后将其还原到目标服务器。

有关SMO的更多信息:http://msdn.microsoft.com/en-us/library/ms162169.aspx。 这是一个很好的教程:http://www.codeproject.com/KB/database/SMO_Tutorial_1.aspx

答案 1 :(得分:1)

最简单的方法是使用SQL Server管理工作室进行备份。然后将备份文件移动到第二台服务器,然后使用SQL Server管理工作室将其还原。如果你需要SQL代码(而不是GUI方式),只需删除评论......

答案 2 :(得分:1)

这个codeplex项目有一个基本的库,如果你想自己动手,并有两个示例项目用于迁移/比较任务。

http://dbschemareader.codeplex.com/

另外商业选择是使用Sql Redgate的工具。如果这是一个关键任务数据库,它们很昂贵,但值得每一分钱。另一方面,如果你只是使用数据库作为文件的替代品,比如在嵌入式场景中,那么可能很难证明这种昂贵的工具是合理的。

答案 3 :(得分:0)

您是否尝试过DBSourceTools? http://dbsourcetools.codeplex.com
它是一个开源数据库版本控制工具,它将所有数据库对象和数据编写到磁盘,然后在另一台机器上重新创建数据库。
它具有您正在寻找的所有功能。