我在sql 2008中有一个数据库"Product“,在sql 2008中有另一个数据库"ORDER”。两者都存在于不同的服务器中。
现在需要合并两个数据库,并测试将应用程序指向这个新数据库。
有没有人能建议在不丢失信息的情况下实现这一目标的最佳方法?
我有两个选择。
1)编写数据库对象脚本。(编写数据库脚本并在新数据库中运行此脚本)
2)导出DB
其中哪一个是最好的,或者我应该使用任何其他方法来避免错误。
我是SQL的新手,所以请用正确的选项指导我。
谢谢
SNA
发布于 2010-01-04 16:18:26
在我看来,实现您想要的最好的方法就是导出数据库。我认为这是最好的选择,因为这比编写一个新的数据库脚本更安全(这是一种只会遇到很多挫折和错误的方法)。在尝试使用脚本执行任何操作之前,只需先尝试导出数据库(这显然也需要更多时间)。所以先试试你的快速解决方案,看看它是否有效。
(我看到您正在使用sql-server 2008)您也在使用management studio吗?如果是这样,您可以在编辑模式下进入这些表,并尝试将行复制/粘贴到新表中。我不知道你的表/数据库有多大,但这也可能是一种选择。
大家好,
尤尼斯
发布于 2010-01-04 16:27:06
正如您所说,有两个选项:编写脚本或使用SQL server导出/导入向导。
我同时使用了这两种方法(对于相同的数据库)
第三种选择是使用Visual StudioTeam System 2008数据库版GDR。
就一次性导出和导入而言,我建议使用向导。这是非常安全而且非常简单的。特别是,由于您是SQL server的新手,您希望采取将风险降至最低的方法。
这种方式唯一的缺点是它可能比其他方法更不透明。
在我合并数据库的项目中,我最终使用了脚本方法,但这主要是因为我有一个项目已经在使用GDR合并增量数据库更新,因此添加数据合并脚本是一项简单的任务-所有更改都需要经过不太懂SQL的DBA(我知道!)因此,保持所有流程的相似性是必须的。
我还从编写数据脚本中学到了一些东西,并将它们应用于设置我的参考数据脚本,因此编写脚本的工作不是一次性成本。
无论哪种方式,我能给出的最重要的提示是在对数据库做任何工作之前备份它们。
https://stackoverflow.com/questions/1998073
复制相似问题