如果在数据库中清除sql server表的列并将备份还原到新数据库,是否可以使用merge来还原该列或跨两个数据库运行更新?
答案 0 :(得分:0)
两者都可以工作,也许UPDATE更容易编写。
MERGE针对更复杂的情况,例如你想要更新一些记录,删除其他记录,还在目标表中插入一些记录,在源表和目标表的某些条件下被忽略。
更新如下:
update db1.dbo.table1 set col =
(select col
from db1_bk.dbo.table1
where db1.dbo.table1.id = db1_bk.dbo.table1.id)
或
update db1.dbo.table1 set db1.dbo.table1.col = db1_bk.dbo.table1.col
from db1.dbo.table1
join db1_bk.dbo.table1 on db1.dbo.table1.id = db1_bk.dbo.table1.id