web-dev-qa-db-ja.com

SQL Server Microsoft.ACE.OLEDB.15.0

Excelシート(2013-32ビット)にアクセスし、それをSQL Server 2014 SP2 64ビットのテーブルとして表示するクエリを作成しています。そして、私はこのエラーを受け取ります:

OLE DBプロバイダー "Microsoft.ACE.OLEDB.15.0"は登録されていません。

Access Runtime 2013および2010をインストールしようとしましたが、同じ問題が引き続き発生します。使用しているクエリは次のとおりです。

SELECT * FROM OPENROWSET('Microsoft.ACE.OLEDB.15.0', 
                         'Excel 15.0;HDR=YES;Database=C:\SheetName.xlsx', 
                         'SELECT * FROM [PayerList$]')
7
Ahadu Melesse

Microsoft.ACE.OLEDB.15.0は、Access 2013ランタイムと共にインストールされるOLEDBドライバーの識別子です。 Excelと共にインストールされません。実際、Excelをインストールする必要さえありません。ランタイムが見つかります here

正しいランタイムバージョンをダウンロードするように注意してください。 64ビットプロセスは32ビットプロバイダーを使用できません。あなたの場合は、64ビットバージョンをダウンロードする必要があります。

Excelはまったく使用されないため、サーバーから削除する必要があります。

11

私は同様の問題に直面していました。プログラムプロパティをVisual Studioの[コンパイル]> [ターゲットCPU]をx86から​​x64(または任意のCPU)に変更しました。これは私のために働いた。私のマシンは64ビットで、プログラムはx86用に作成されています。

2
Pritam K

私はちょうど同じ問題を抱えていました。回避方法があり、ACE.OLDBをパッシブモードでインストールします。ただし、下記のファイルを削除/名前変更しないと、すべてのオフィスアプリケーションが起動するとすぐに初期セットアップメニューを実行し続けることになり、すぐに苦痛になります。

したがって、すべてはこのリンクで説明されています here 。次の投稿を探してください:2013年2月20日水曜日、Applied Maths NVによる編集3:35 PM 2013年2月21日木曜日、Dave Kolbによる回答として提案4:48 PM 2013年2月20日水曜日午後2時37分

ただし、頭を痛めるのではなく、古いバージョンのOfficeをアンインストールして64ビット版をインストールするだけで、64ビットドライバーも安心してインストールできます。

0
Max S.