2005.12 ACCESS 2000 SP-3 + PostgreSQL 8.0.4
DAOでもADOでも使える。ACCESS(JET)がSQL文を解釈するので、ACCESSの文法のSQLが使える。そして、クエリによりMDBファイルのデータとPostgreSQLのデータで異種結合ができる。一番簡単でACCESSらしく使えるが、クエリの内容によっては非常に効率の悪い方法でPostgreSQLからデータを取得し、MDBファイル共有システム以下の高ネットワーク負荷・低処理速度状態になってしまう場合がある。
ACCESS(JET)がどのようなSQL文をPostgreSQLに送っているかは、ODBC
Driverの一般ログ出力をONにすれば見ることができる。(見てみる)
DAOのODBC Direct方式で使える。この場合、PostgreSQLがSQL文を処理する本来のクライアントサーバーになる。SQL文はPostgreSQLの文法に従って書かなければいけない。
ADOで使える。この場合、PostgreSQLがSQL文を処理する本来のクライアントサーバーになる。SQL文はPostgreSQLの文法に従って書かなければいけない。
ADOで使える。この場合、PostgreSQLがSQL文を処理する本来のクライアントサーバーになる。SQL文はPostgreSQLの文法に従って書かなければいけない。
VB6ならOleDbの意義があると思いますが、ACCESSのクエリとは無縁のものなので、あえてACCESSでpgOleDbを使う利点はないように思う。
Visual Studio.NET 2003のデータベースエクスプローラの支援は受けられないけれど、クライアントPCにいちいちODBCドライバをインストールする必要がない!!のが良い。
psqlODBCも".NET Framework Data Provider for ODBC"経由で使える。
.NETでpgOleDbは試したことがない。
MS ACCESSからPostgreSQLへ移行するに戻る TOPに戻る