現在オフラインです。再接続するためにインターネットの接続を待っています

[PRB] Microsoft Jet の OLE DB プロバイダを使用するリンク サーバー クエリを実行するとエラー 7399 が表示される

現象
Microsoft Jet の OLE DB プロバイダを使用するようにリンク サーバーを構成した状態で、リンク サーバー クエリを実行すると、クエリが正しく実行されず、次のエラー メッセージが表示されることがあります。
サーバー : メッセージ 7399 、レベル 16、状態 1、行 1
OLE DB プロバイダ 'Microsoft.Jet.OLEDB.4.0' はエラーをレポートしました。
[OLE/DB provider returned message: エラーを特定できません。]
OLE DB エラー トレース [OLE/DB Provider 'Microsoft.Jet.OLEDB.4.0' IDBInitialize::Initialize returned 0x80004005: ]。
また、SQL Server Enterprise Manager でリンク サーバーを参照すると、次のエラー メッセージが表示されることがあります。
エラー 7399: OLE DB プロバイダ 'Microsoft.Jet.OLEDB.4.0' はエラーをレポートしました。
原因
この問題は、ログイン アカウントに SQL Server の開始アカウントの一時フォルダへのフル アクセスが付与されていないために発生します。リンク サーバー クエリは、ログイン アカウントのコンテキストで実行され、実行時には、SQL Server により、一時ファイルのデータソース名 (DSN) が SQL Server の開始アカウントの一時フォルダに作成されます。
回避策
この問題を回避するには、以下の手順を実行します。
  1. SQL Server の開始アカウントを使用して、コンピュータにログオンします。
  2. オペレーティング システムのインストール フォルダに Temp という名前で新しいフォルダを作成します。
  3. 管理者以外のアカウントに Temp フォルダへのフル アクセスを許可します。
  4. SQL Server の開始アカウントの TEMP および TMP ユーザー変数の値を、新しく作成した Temp フォルダに設定します。この設定を行うには、以下の手順を実行します。
    1. [マイ コンピュータ] を右クリックし、[プロパティ] をクリックします。
    2. [詳細] タブをクリックし、[環境変数] をクリックします。
    3. [ログオン ユーザー のユーザー環境変数] の一覧で、[TEMP] をクリックし、[編集] をクリックします。
    4. [変数値] ボックスに、新しい Temp フォルダの場所である C:\Temp を入力して、[OK] をクリックします。
    5. 手順 c. および d. を繰り返し、TMP 変数の値を設定します。
    6. [OK] を 2 回クリックします。
  5. ログオフし、SQL Server の開始アカウントを使用してコンピュータにログオンします。
  6. SQL Server サービスを再開します。
関連情報
関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
296711 PRB: "Unspecified error" Error 7399 Using OPENROWSET Against Jet Database
関連情報
この資料は米国 Microsoft Corporation から提供されている Knowledge Base の Article ID 814398 (最終更新日 2003-10-16) を基に作成したものです。
プロパティ

文書番号:814398 - 最終更新日: 05/10/2011 15:46:00 - リビジョン: 6.0

  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 7.0 Standard Edition
  • kbsqlmanagementtools kbsecurity kberrmsg kbprb KB814398
フィードバック