当前位置: 代码迷 >> Sql Server >> 跨数据库触发器的有关问题
  详细解决方案

跨数据库触发器的有关问题

热度:40   发布时间:2016-04-27 12:11:01.0
跨数据库触发器的问题
已经知
数据库DB1中有表A有字段F1,F2,ID
数据库DB2中有表B有字段B2,ID

想写一个触发器实现:
当DB1的表A插入一条记录时,数据库DB2中的表B也插入一条记录,并且用A.F2的值做为表B.B2的值,A.ID的值作为B.ID的值
当DB1的表A删除一条记录时,数据库DB2中的表B也删除ID相同的记录
应该怎么写?谢谢.
这思路效率会不会很差啊?有没有更好的替代方法?

------解决方案--------------------
SQL code
--insert update分开吧,不然还要加些判断的create trigger A_INSon Afor insert,updateasif update(F2) update t set t.B2=i.F2 from [DB2].[dbo].[B] t,inserted i where i.ID=t.ID;insert into [DB2].[dbo].[B](B2,ID) select F2,ID from inserted A    where not exists (select 1 from [DB2].[dbo].[B] t        where t.ID=A.ID and t.F2=B.F2);go
  相关解决方案