ホームページ > データベース > mysql チュートリアル > データを Excel にエクスポートするときに OLE DB プロバイダー インスタンスを作成できないのはなぜですか?

データを Excel にエクスポートするときに OLE DB プロバイダー インスタンスを作成できないのはなぜですか?

Barbara Streisand
リリース: 2024-12-19 19:16:14
オリジナル
970 人が閲覧しました

Why Can't I Create an OLE DB Provider Instance When Exporting Data to Excel?

OLE DB プロバイダー インスタンスを作成できない: トラブルシューティングと解決策

T-SQL クエリを通じて Excel にデータをエクスポートしようとすると、ユーザーが「リンク サーバー null に対して OLE DB プロバイダー Microsoft.Jet.OLEDB.4.0 のインスタンスを作成できません。」というエラーが発生します。このエラーは、エクスポート操作に必要な OLE DB プロバイダーのインスタンスの作成に関する問題を示しています。

考えられる原因:

  • にアクセスするためのユーザー権限が不十分です。 TEMP フォルダー
  • OLE DB プロバイダーと SQL Server アーキテクチャ間の非互換性 (例: 64 ビット SQL Server 上の 32 ビット プロバイダー)

解決策:

  1. ユーザー権限の確認: 管理者権限を付与するC ドライブの TEMP フォルダーにフォルダーを作成できるようにするためのクエリを実行しているユーザーに、OPENROWSET が作成するフォルダーを作成します。一時ファイル。
  2. 分散クエリの構成: アドホック分散クエリを有効にし、Microsoft.Jet.OLEDB.4.0 プロパティを次のように構成します:
EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.Jet.OLEDB.4.0', N'AllowInProcess', 1
GO 
EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.Jet.OLEDB.4.0', N'DynamicParameters', 1
GO 
ログイン後にコピー
  1. OLE DB プロバイダーを更新: の場合64 ビット SQL Server にアクセスするには、Windows (64 ビット) 用 Microsoft.ACE.OLEDB.12.0 をインストールし、次のコマンドを使用してそのプロパティを構成します:
EXEC sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'AllowInProcess', 1   
EXEC sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'DynamicParam', 1
ログイン後にコピー
  1. msexcl40.dll を登録します: SQL Server 2014 以降の場合は、msexcl40.dll を登録します。 file:
regsvr32 C:\Windows\SysWOW64\msexcl40.dll
ログイン後にコピー

これらの手順に従うと、ユーザーは OLE DB プロバイダー インスタンスの作成エラーが発生することなく、データを Excel に正常にエクスポートできるようになります。

以上がデータを Excel にエクスポートするときに OLE DB プロバイダー インスタンスを作成できないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート