web-dev-qa-db-ja.com

「 'Microsoft.ACE.OLEDB.12.0'プロバイダーがローカルマシンに登録されていません」xlsxのプロセスをSQLサーバーにインポートする際のエラー

64ビットWindows 7とSQLServer 2008 R2(64ビット)があります

here の指示に従い、ExcelファイルをSQLサーバーにインポートしますが、Excelファイルにアクセスしようとするときにその投稿のfigure3セクションで、このエラーをクリックすると停止します:

The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine

AccessDatabaseEngine_x64をインストールする必要があることがわかっているWebを検索します。しかし、私がそれをインストールするとき、私は同じ問題を抱えています

どうすればいいですか?

99
Mosijava

エラーを解決するには、次をインストールします。

2007 Office System Driver:データ接続コンポーネント

AccessDatabaseEngine.exe(25.3 MB)

このダウンロードにより、Microsoft Office Access 2007(* .mdbおよび。accdb)ファイルなどの既存のMicrosoft OfficeファイルとMicrosoft Office Excel 2007(。xls、*。xlsx、および* .xlsb)ファイルMicrosoft SQLなどの他のデータソースサーバー

188
Slava

Excel 2010ドライバーは64ビットですが、デフォルトのSSMSインポートエクスポートウィザードは32ですので、エラーメッセージです。

Import Export Data(64ビット)ツールを使用してインポートできます。 ( "C:\ Program Files\Microsoft SQL Server\110\DTS\Binn\DTSWizard.exe")パスがProgram Files x86ではないことに注意してください。

47
Ozer

これが問題を解決した唯一のインストールです。

SQL 2008 r2 w/office 2010 64bit: "2007 Office System Driver:データ接続コンポーネント"

16
Adam H

CSVファイルとして保存し、フラットソースファイルとしてインポートします。

12
Bob

ここに2010バージョンのリンクをインストールするまで、私には運がありませんでした https://www.Microsoft.com/en-us/download/details.aspx?id=13255

32ビットバージョンをインストールしようとしましたが、それでもエラーが発生するため、アンインストールして64ビットバージョンをインストールすると動作し始めました。

0
user890332