从活动的SQL Server表还原已删除的信息

时间:2019-03-21 14:53:13

标签: sql-server restore

我有一个存储客户信息(dbo.custinfo)的数据库。为了安全起见,过去通过删除Null值删除了表中的电话号码。现在已经决定需要重新输入电话号码。

此后,还有其他客户添加到该数据库。在确保正确的数字与正确的客户相对应的同时,还原数据的最佳方法是什么?

我拥有在删除电话号码之前已完成的数据库备份。

提前谢谢

1 个答案:

答案 0 :(得分:0)

根据Larnu的评论,需要对数据库进行并行还原,但此操作可以通过SSMS和GUI完成。

但是,没有用于构建使用联接的更新语句的向导,因此对于不专门使用SQL的人来说,这也许是一种高级案例。

因此,有一个通用代码段可以获取值:

-- Another backup to rollback this change
BACKUP DATABASE yourDB TO DISK= 'C:\Somewhere\YourDB.bak' WITH COPY_ONLY, COMPRESSION, STATS=1
-- UPDATE + JOIN
UPDATE cur_ci
SET cur_ci.phone = res_ci.phone
FROM [CURRENTDB].dbo.custinfo cur_ci
JOIN [RESTOREDB].dbo.custinfo res_ci on cur_ci.customerID = res_ci.customerID