質問: sql server 2008 r2(x86)およびアクセスエンジン すべて、x64 windows7を実行している多くのマシンでsqlserver 2008 r2(service pack 1)用のaccessデータベースエンジンを「管理者」として実行(およびsql serverを「sa」として設定)しても問題なくセットアップしました。また、windows7およびsqlserver 2008 r2 express edition(x86)を実行しているx86ベースのマシンにaccessデータベースエンジンを問題なくインストールしました。ただし、x86 windows7でsqlserver 2008r2のdevelopereditionを使用してaccessデータベースエンジンをセットアップしようとすると、機能しません!? expressでは機能しますが、developerでは機能しません。 sqlの完全な再インストールを試みましたが、それでも機能せず、次のエラーがスローされます。ole db provider "microsoft.ace.oledb.12.0" for linked server "(null)" returned message "unspecified error". msg 7303, level 16, state 1, line 1 cannot initialize the data source object of ole db provider "microsoft.ace.oledb.12.0" for linked server "(null)". マシン情報は(「systeminfo」を実行しているコマンドラインから取得):os name: microsoft windows 7 professional os version: 6.1.7601 service pack 1 build 7601 os configuration: standalone workstation system type: x86-based pc processor(s): 1 processor(s) installed. [01]: x64 family 6 model 42 stepping 7 genuineintel ~2501mhz 32ビットバージョンを正常にインストールしたaccessengineをセットアップするには、management studioにアクセスして、次のクエリを実行します。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 -- then each of the following separately. exec sp_configure 'show advanced options',1 reconfigure exec sp_configure 'ad hoc distributed queries', 1 reconfigure リンクサーバーが正しく構成されているかどうかを確認するために通常実行するクエリの1つは、次のとおりです。select * from openrowset('microsoft.ace.oledb.12.0', 'j:\data\thisdir\thatdir\someaccessfile.mdb'; 'admin';'',thistable); go このプロセスは、accessデータベースエンジン(それぞれx86とx64)を備えたsql express 2008 r2の両方(x86とx64)を含むすべての構成で機能しますが、x86 windows7のdevelopereditionでは機能しません。なぜですか?この問題を解決する方法についてアドバイスをくれる人がいますか?お時間をいただき、誠にありがとうございます。
回答: この投稿 問題はtempフォルダーのアクセス許可でした: 私の解決策は、sqlserverのサービスアカウントを使用してサーバーに一度ログインすることでした。その後すぐにすべてが機能し、これを2番目のサーバーに複製しました。 aceエンジンとjetエンジンはどちらも、作業を行うためにtempフォルダーにアクセスする必要があることを他の場所で読みました。一時フォルダへのアクセスを「配線」するには、一度ログインする必要があると思います。