不需要.MS DTC 服务
Microsoft 分布式事务处理协调器 (MS DTC) 是一个事务管理器,它允许客户端应用程序在一个事务中包含多个不同的数据源。MS DTC 协调在所有已在事务中登记的服务器间提交分布式事务。Microsoft® SQL Server™ 安装可通过下列方法参与分布式事务: 调用运行 SQL Server 的远程服务器上的存储过程。
自动或显式地将本地事务提升为一个分布式事务并在该事务中登记远程服务器。
执行分布式更新以更新多个 OLE DB 数据源上的数据。 
如果这些 OLE DB 数据源支持 OLE DB 分布式事务接口,SQL Server 还可以将它们登记在分布式事务中。MS DTC 服务协调正确完成分布式事务,以确保所有服务器上的全部更新为永久性的,或在发生错误时删除所有更新。

解决方案 »

  1.   

    邹大哥,也就是说,SQL server只在本机运行的情况下不需要启动msdtc是吗?
      

  2.   

    不是比如你连接aa这台SQL进行操作,如果你用了这样的操作,就需要启动msdtc
    BEGIN DISTRIBUTED TRANSACTION
    insert openrowset('sqloledb','bb';'sa';'',库.dbo.表) values(1,1)
    commit tran即开启了事务,操作了非aa这个服务器的数据库
      

  3.   

    分布式事务必须要有ms dtc一样的事务管理器来管理,跨越多个数据库(同种/异种,本地/异地)的sql server事务就是分布式事务。如果你不需要进行分布式操作,自然不需要。