2012-01-10 19 views
2

Windows 2008の64ビットマシンにインストールされたSQL Server 2008 R2でOpenrowsetを使用しようとしています。以下のクエリを実行すると、 。私を助けてください。Windows 2008の64ビットマシンにインストールされているSQL Server 2008 R2のOpenrowset

SELECT * FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0','Excel 8.0;Database=E:\01112012.xls;','SELECT * FROM [Sheet1$]') 

ERROR:

メッセージ7403、レベル16、状態1、行1 OLE DBプロバイダ "Microsoft.Jet.OLEDB.4.0は、" 登録されていません。

+1

Microsoft Accessデータベースエンジン2010再配布可能ファイルをインストールした後、上記のクエリが変更され、me.Belowが正常に機能しました。変更されたクエリです。 SELECT * FROM OPENROWSET( 'MICROSOFT.ACE.OLEDB.12.0'、 'Excel 12.0; HDR = YES; DATABASE = E:\ 01112012.xls'、sheet1 $) – Simhadri

答えて

3

は、インストールされている: - >Microsoft Access Database Engine 2010 Redistributable

  • このダウンロードは、Microsoft Officeのアクセス2010(* .MDBとの.accdbなどの既存のMicrosoft Officeファイルとの間のデータ転送を促進する一連のコンポーネントをインストールします)ファイルとMicrosoft Office Excel 2010( .xls、* .xlsx、* .xlsb)ファイルをMicrosoft SQL Serverなどの他のデータソースにコピーします。既存のテキストファイルへの接続もサポートされています。アプリケーション開発者がOfficeファイル形式に接続してアプリケーションを開発する際に使用するODBCおよびOLEDBドライバがインストールされています。
+0

はい、これはマシンにインストールされています。 – Simhadri

+0

私はこれをインストールした後、私は上記のクエリを変更し、me.Belowは変更されたクエリです。 選択* OPENROWSET( 'MICROSOFT.ACE.OLEDB.12.0'、 'エクセル12.0; HDR = YES; DATABASE = E:\ 01112012.xls'、シート1の$)から – Simhadri

+0

おかげトン@ KD7 – Simhadri

0

64ビット版のWindowsでOPENROWSETを実行するには

1- AccessDatabaseEngine_x64.exeをインストールします(再起動が必要です)。

2- SQL Management Studioを使用している場合は、管理者としてManagement Studioを実行します。管理者アカウントとして実行しないと、このエラーが発生します(OLE DBプロバイダ "MICROSOFT.ACE.OLEDB.12.0"のデータソースオブジェクトをリンクされたサーバー "(null)"に対して初期化できません)。

3 - 。。OPENROWSET機能の '使用例は、シート1の$ SELECT * FROM' を使用しないでください、このコードを試してみてください

select * from OPENROWSET('MICROSOFT.ACE.OLEDB.12.0', 'Excel 12.0;HDR=YES;DATABASE=D:\test.xlsx', sheet1$) 

まだあなたが(32ビットを持っている場合は、データベース

EXEC sp_configure 'show advanced options', 1; 
RECONFIGURE with override; 
GO 

EXEC sp_configure 'Ad Hoc Distributed Queries', 1; 
RECONFIGURE with override; 
GO 

EXEC master . dbo. sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0' , N'AllowInProcess' , 1 
GO 

EXEC master . dbo. sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0' , N'DynamicParameters' , 1 
GO 

、4-を設定するには、このコマンドを実行します。 )エラー、SQLサービスを再起動してC:\ Windows \ Tempを確認し、このdにアクセスできるかどうかを確認してくださいディレクトリかどうか。

関連する問題