クエリの結果行を Excel ファイルに書き込みたい:
INSERT into OPENROWSET('Microsoft.ACE.OLEDB.12.0',
'Excel 12.0;Database=C:\temp\testing.xlsx;',
'SELECT Id,CompanyName FROM [Sheet1$]')
select Id,CompanyName from tbl_Company
しかし、このクエリを実行すると、次のエラーが発生します。
メッセージ 7302、レベル 16、状態 1、行 3 リンク サーバー "(null)" の OLE DB プロバイダー "Microsoft.ACE.OLEDB.12.0" のインスタンスを作成できません。
このコードを実行する前に行うこと:
1 - 「2007 Office System Driver: Data Connectivity Components」をインストールしました
2 - Excel を使用するための構成スクリプトを実行:
sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'Ad Hoc Distributed Queries', 1;
GO
RECONFIGURE;
GO
3 - SQL Server サービスのログイン アカウントをローカル アカウントに変更する
4 - Excel ファイル フォルダーに対するフル アクセス許可をローカル アカウントに追加しました。
5 - SQL サービスの再起動
しかし、私の問題は残っています
サーバー: Windows Server 2008
MS Office がサーバーにインストールされていない
SQL Server 2014 64 ビット SP1