UPDATE在一个表中记录,包含来自另一个表的数据(单独的DB' s)SSMS

时间:2017-01-17 13:56:38

标签: sql sql-server sql-update ssms

我尝试创建一个脚本,用于解决我们在数据库结构中遇到的复制问题。

用户将在主数据库中创建主记录,并使用复制将其推送到构成订阅一部分的所有其他数据库。有时候,需要推倒的主人会做出改变。

不幸的是,复制并不总是有效。通常我通过一些简单的SQL解决这个问题,但最近我注意到整个记录不同步。

所以我想编写一个脚本,当发生这种情况时,我只是插入一个唯一的ID,订阅的记录将完全更新来自Master的数据。

为了尝试解释,我使用的是这样的东西,但它返回0

update b 
set b.name = a.name,
<defined all columns>
from DatabaseA..crmast a
join DatabaseB..crmast b on a.crcode = b.crcode
where a.crcode = ''

DatabaseA是Master(来源)

DatabaseB是订户(目的地)

在第三行,我已经定义了表格中的每一列(它是一张大表......)

a.crcode =&#39;&#39;我输入了唯一的Crcode,两个表都是相同的。然后我想要更新所有列。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:-1)

所以这一切都排序了。小学生错误,正在查看错误的源表,其中Crcode不存在。