by WebSurfer
2011年11月8日 22:37
注意 1:
2010, 2013 用のドライバには 32/64-bit 版の両方があります(2007 用は 32-bit のみ)。Visual Studio は 32-bit ですので、ドライバに 64-bit 版を使うと、この記事に書いたような Visual Studio の Access DB への接続はできませんので注意してください。
注意 2:
下にリンクを張ったダウンロードページ「Microsoft Access データベース エンジン 2010 再頒布可能コンポーネント」の「詳細」にある条件に "Jet の全般的な代替としての使用" はできないと書いてあります。一方 Microsoft Access 2010 を使用したデータ プログラミングには JET は非推奨だから ACE を使おうという意味のことが書いてあります。一体どうしろと言うのでしょうね。(汗)
Access 2007 をインストールしていない開発環境でも、Access 2007 データベース(accdb ファイル)を使用するアプリケーションを開発できます。
Access 2003 以前で使用されていた JET (Joint Engine Technology) データベースエンジンは、Access 2007 では ACE (Access Connectivity Engine) データベースエンジンに代わったそうです。そのため、ACE データベースエンジン用のドライバが必要になります。
Microsoft ダウンロードセンターの 2007 Office system ドライバ: データ接続コンポーネントから AccessDatabaseEngine.exe をダウンロードして開発マシンにインストールすれば、ACE データベースエンジン用の OLEDB ドライバと ODBC ドライバが利用可能になります。
2019/6/24 追記: Office 2007 がサポートされなくなったためか、上の 2007 用のページはリンク切れとなってしまいました。探しても見つからないので、今現在は 2010 以降用を使うほかなさそうです。2010 用は以下からダウンロードできます。
Microsoft Access データベース エンジン 2010 再頒布可能コンポーネント
(ちなみに、JET 4.0 データベースエンジン用の OLEDB プロバイダ、ODBC ドライバは Windows OS 同梱で提供されているのでインストールは不要だそうです。Jet データベース エンジンを使用するアプリケーションの開発/動作環境 を参照ください)
インストールすると、Visual Studio 2010 を Access 2007 のデータベース(accdb ファイル)に接続できるようになります。
上の画像は、Microsoft が提供しているサンプルデータベース "Northwind 2007.accdb" を Web アプリケーションルート直下の App_Data フォルダにコピーして、Visual Studio 2010 のサーバーエクスプローラーの「接続の追加」メニューから「詳細設定」を開き、"Northwind 2007.accdb" に接続しているところです。
接続できれば、Access 2003 の mdb ファイルと同様に、AccessDataSource や ObjectDataSource を利用して Access 2007 データベース(.accdb ファイル)を操作するアプリケーションを、ウィザードベースで作成できるようになります。