【发布时间】:2017-01-11 19:43:54
【问题描述】:
数据库 Sql server 2008R
我正在同步两个独立的数据库应用程序。数据库是链接服务器。一种是CRM,一种是ERP。当用户在 CRM 的 Names 表 Status 列中输入两个代码字符串之一时,ERP 的 Names 表记录需要使用来自 CRM 的名称记录进行更新。
VN=供应商 CO=联系方式
客户关系管理
+-------+-------+-----------+--------+-----------+------------+----------+--------+
| Names | Table | ContactID | TypeID | FirstName | MiddleName | LastName | Status |
+-------+-------+-----------+--------+-----------+------------+----------+--------+
用户在状态中输入(2 个代码中的 1 个)VN、CO
企业资源规划
+-------+-------+-----------+--------+-----------+------------+----------+
| Names | Table | ContactID | TypeID | FirstName | MiddleName | LastName |
+-------+-------+-----------+--------+-----------+------------+----------+
来自CRM的姓名记录需要更新ERP的姓名记录
好像是这样的:
UPDATE n
case i.Status
when 'WO' then SET ERP.FirstName = i.FirstName, ERP.MiddleName = i.MiddleName, ERP.LastName = i.LastName
from inserted I
when 'PN' then SET ERP.FirstName = i.FirstName, ERP.MiddleName = i.MiddleName, ERP.LastName = i.LastName
end
from inserted i
INNER JOIN CRM.dbo.Names n on n.CompanyID = i.CompanyID
【问题讨论】:
标签: sql-server triggers sql-update linked-server