|
SQLServer 2008跨数据库实例事务处理_mssql学习_编程技术-你的首页-uuhomepage.com托了几天的难题,终于解决了。特分享一下以下是一个存储过程CREATE PROCEDURE deleteAccountAll @id intASSET XACT_abort ONBEGIN DISTRIBUTED TRANdelete from AccountCapital where accountid = @iddelete from logininfo where username = @iddelete from CapitalRecord where accountid = @iddelete from [Trade]..[order] where accountid = @iddelete from account where id = @idif @@error<>0rollback tranelse commit tran GO其中order表与其他几个表不在同一个数据库实例,若想实现事务操作,具体要注意两点:1.打开MSDTC服务,即 set XACT_abort on ,若本机没有启动,则运行 net start msdtc2.对不同数据库实例的访问要注意用[数据库实例名]..[表名]
|