У меня есть хранимая процедура, которая использует команду MERGE
для синхронизации dbo.tableA
с [mylinkedserver].dbo.TableA
.
TableA
имеет связанный с ним триггер вставки / обновления. Для простоты все, что делает триггер, это
print 'I am a simple trigger because i dont want to cause errors'
Когда выполняется SP (через приложение Windows .net), он выдает эту ошибку:
Поставщик OLE DB "SQLNCLI10" для связанного сервера "MyLinkedServer"
вернулось сообщение "Нет транзакции
активный ".
Если я удаляю триггер и снова выполняю сохраненный процесс, он выполняется абсолютно нормально.
Хранимая процедура также работает нормально (с триггером), если я запускаю ее через SSMS.
MSDTC включен на обоих серверах.
Сервер - это сервер Windows 2008, SQL Server 2008 с пакетом обновления 2.
Почему триггер вызывает эту ошибку?!?! ??