在存储过程中使用事务,并且使用链接服务器时,报类似下面的错误
链接服务器"****"的 OLE DB 访问接口 "SQLNCLI10" 返回了消息 "没有活动事务。"。
消息 7391,级别 16,状态 2,过程 proc_SyncDiliveryData,第 20 行
无法执行该操作,因为链接服务器 "*****r" 的 OLE DB 访问接口 "SQLNCLI10" 无法启动分布式事务。
-------2017.5.25补充----------
时隔几个月之后,居然又遇到此问题,又是好一顿折腾,把之前的这些都检查了一遍还是没解决,无奈翻出旧程序来执行,发现又没问题了,于是一一进行比对,发现问题的关键是……
这次调用链接服务器的存储过程是在一个事务里进行的,因为要循环操作,为保证数据完整执行所以放进事务里处理。
所以赶紧将事务取消,直接执行,发现问题就这么解决了……
---------------------
度娘了很久,找到了两个比较全面的处理方法,理论上来讲按照这两个方法一步步处理到位了问题就可以解决了,但我确没解决到……
后来找到了这篇文章: