我有一个存储客户信息的数据库 ( dbo.custinfo)。过去,出于安全目的,表中的电话号码已通过替换为 Null 值而被删除。现在已经决定需要重新输入电话号码。
从那时起,已经有其他客户添加到此数据库中。在确保正确的数字对应于正确的客户的同时恢复这些数据的最佳方法是什么?
我有删除电话号码之前完成的数据库备份。
先感谢您
我有一个存储客户信息的数据库 ( dbo.custinfo)。过去,出于安全目的,表中的电话号码已通过替换为 Null 值而被删除。现在已经决定需要重新输入电话号码。
从那时起,已经有其他客户添加到此数据库中。在确保正确的数字对应于正确的客户的同时恢复这些数据的最佳方法是什么?
我有删除电话号码之前完成的数据库备份。
先感谢您
虽然根据 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