假如,要在生产服务器上操作仿真环境服务器上某些表的内容(建了链接服务器),
如:
BEGIN TRAN --ROLLBACK
INSERT INTO [10.0.9.137].SubjectDB.[Sale]. [SaleRecord_SaleProduct]
SELECT *
FROM SubjectDB.[Sale]. [SaleRecord_SaleProduct]
就会报错:
OLE DB provider "SQLNCLI11" for linked server "10.0.9.137" returned message "事务中的登记已经存在。".
消息 7395,级别 16,状态 2,第 2 行
Unable to start a nested transaction for OLE DB provider "SQLNCLI11" for linked server "10.0.9.137". A nested transaction was required because the XACT_ABORT option was set to OFF.
解决办法:
在最前面加语句:
SET XACT_ABORT ON
题外话:多谢同事云鹤,否则我一直以为用链接服务器时,不能开事务呢。