4

私は2台のSQLServer2008マシンを持っておりSQLSERVER1SQLSERVER2(すっごくオリジナル)

SQLSERVER2、私はします:

[SQLSERVER1].[DATABASE].[DBO].StoreProcedure1

すべてうまくいきます。

しかし、トリガーを入れると、このエラーが発生します

リンクサーバー「[SQLSERVER1]」のOLEDBプロバイダー「SQLNCLI10」が「アクティブなトランザクションはありません」というメッセージを返しました。
メッセージ7391、レベル16、状態2、プロシージャStoreProcedure1、57行
目リンクサーバー "[SQLSERVER1]"のOLEDBプロバイダー"SQLNCLI10"が分散トランザクションを開始できなかったため、操作を実行できませんでした。

4

1 に答える 1

5

リンク サーバーで RPC の入出力が許可されていることを確認する必要があります。

[サーバー オブジェクト] -> [リンクされたサーバー] -> サーバーを右クリックし、[プロパティ] -> [サーバー オプション] を選択します。

RPC は「True」、RPC Out は「True」である必要があります。

また、分散トランザクションを使用できるように、サーバーで DTC ネットワーク アクセスが有効になっていることを確認する必要があります。

于 2013-02-04T19:42:01.670 に答える