写了一个触发器:
Create TRIGGER TRIGGER_NAME
ON TableB
FOR Insert,Update,Delete
AS
insert openrowset( 'SQLOLEDB ', '192.168.0.22'; 'sa'; 'P@ssword',TestDB.dbo.TableA)
select * from Tablea
GO
执行此触发器时,报错【服务器上的MSDTC不可用。】
启动'192.168.0.22 '上的Distributed Transaction Coordinator服务。
又报错误:
【 无法执行改操作,因为链接服务器“(null)”的OLE DB访问接口“SQLNCLI”无法启动分布式事务。
链接服务器“(null)”的OLE DB访问接口“SQLNCLI”返回了消息“该伙伴事务管理器已经禁止了它对远程/网络事务的支持。” 】
windows服务中的Distributed Transaction Coordinator服务启动没有?
另外,Component Services中的local DTC都要设置好
看一下你数据库服务器以及192.168.0.22这个上面的 MSDTC服务(楼上说的那个)有没有开,另外分别在两个机器上搞如下设置试试看:
控制面板-》管理工具-》组建服务-》本地DTC右键属性。