我有一个 SQL Server 2005 过程,需要对其进行修改以调用链接服务器上的过程。我的本地程序被其他几个程序调用,总是在一个事务中。
如果我将调用添加到链接服务器,那么在运行时我会收到一条消息,指出 OLE DB 提供程序无法开始分布式事务。
这对我来说很好:据我所知,远程过程不会做任何数据库更改。我不需要它在事务内部,因此不需要分布式事务。
但是我怀疑我没有那个选项,没有办法关闭事务到链接服务器的扩展。它是否正确?
(我可以通过重构这些过程来解决这个问题,以便对链接服务器的调用发生在所有事务之外的父过程中。但从逻辑上讲,它属于这个子过程,所以我想保留它。)
谢谢大家。