プロが教える店舗&オフィスのセキュリティ対策術

[OSのVER]:2003server 同士
[SQLServerのVER]:SQLServer2000 StandardEdition SP3

はじめまして!
前のログ(http://www7.big.or.jp/~pinball/discus/sqls/26278 …)で
でていたエラーメッセージ

サーバー : メッセージ 7391、レベル 16、状態 1、プロシージャ
[Microsoft][ODBC SQL Server Driver][SQL Server]OLE DB プロバイダ 'SQLOLEDB' は分散トランザクションを開始できなかったので、要求した操作は実行されませんでした。
[OLE/DB provider returned message: 指定されたトランザクション コーディネータに、新規トランザクションを参加できませんでした。]
OLE DB エラー トレース [OLE/DB Provider 'SQLOLEDB' ITransactionJoin::JoinTransaction returned 0x8004d00a]。

と表示されます
ビューや、MSDTC(http://support.microsoft.com/?scid=kb;ja;329332& …
などすべてやってみましたがだめでした
Enterprise Managerでリンクサーバーを設定して中身を確認する事もできました
ビューでその別サーバーのDBを覗くこともできます

ストアドでカーソルを使用しています

DECLARE M_USER_CSR CURSOR FOR SELECT
INPDATE
FROM
[別サーバ名].DB.dbo.xxxxxx
WHERE
INPDATE = @COMP_DATE -- システム更新日付比較

と、定義して

FETCH NEXT FROM M_USER_CSR

としたところで、エラーが表示されます
最初のフェッチではエラーがでず(一件目は正常に内容を取得してます)
二件目のフェッチでエラーがでます

どのような解決方法がございますか?
どうか教えてください
よろしくお願いします


ps:サーバー同士はドメイン管理されていません
   ワークグループ管理のもと互いに信頼関係は結んでおります

A 回答 (1件)

もしかしたらですが、レジストリの


HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC\TurnOffRpcSecurity
は1になっていますか。
RPC (リモート プロシージャ コール) のセキュリティを無効にする必要があるかもしれません。

参考URL:http://support.microsoft.com/default.aspx?scid=k …
    • good
    • 0
この回答へのお礼

その通りでした
ありがとうございました

最初そのページを見たのですが、元々あるものだと
思っていて、追加するなんて思わなかったです
うまくいきました

ありがとうございました

お礼日時:2005/02/22 10:06

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す