如何从现有数据库恢复和现有备份到新数据库而不影响原始数据?

时间:2015-01-07 16:28:15

标签: sql sql-server database sql-server-2008

我已经广泛搜索了这个问题的答案,但找不到一个好的答案。我已经查看了几篇恢复数据库文章和一些回滚,但仍然没有成功。

我的情况是:我有一个非常大的数据库,我在其中为单个表的单个列执行了错误的更新查询,并且我有一个完整的数据库备份直到昨天(这足以纠正问题)。但同时更新了同一个数据库的其他表格,我要求他们保留当前值。

所以读完我的计划之后:将完整备份恢复到新位置,然后获取我需要的列的值,并在当前数据库中输入。

我的问题是:我无法在不影响生产数据库的情况下恢复此完整备份。当我尝试恢复它时,sql studio说mdf文件不能被覆盖(这很好,因为我将进一步使用该表),然后我看到一些文章告诉我使用MOVE查询。但是,如果我使用它,原始/生产表中的mdf文件将被重新定位,从而影响表格吗? 如果我有事务日志备份,我还看到一些文章告诉我回滚它。我实际上无法判断我是否拥有这些,也不知道那些是什么。即使在谷歌搜索后

关于我应该如何进行的任何想法?

抱歉,如果这是一个新手问题,但我本来不是一个程序员,但我一直在做这个工作,我真的需要快速完成!所以任何帮助都将受到强烈赞赏

我正在使用SQL Server Standard 2005和SQL Server Mangmt Studio 2008。

1 个答案:

答案 0 :(得分:2)

  1. 在任何位置恢复使用不同名称的备份,如DB_Temp
  2. 使用选择INTO .......
  3. 从正在运行的数据库复制表格
  4. 将记录从新恢复的DB(DB_Temp)表导入正在运行的数据库
  5. 删除数据库DB_Temp
  6. 检查最近复制的表和原始表之间的更改
  7. 相应地更新记录 谢谢