MS Access で PostgreSQL を操作する
堅陣なサーバーのデータベースを自分のパソコンから操作する為の「ODBC接続」という技術が古くからあります。具体的には、 Microsoft Access から 仮想マシンで動作しているデータベースに ODBC接続する手順です。これをマスターすれば簡単に様々なフォーマットでエクスポートしたり帳票印刷ができるようになります。
Windows 10 Pro 22H2
Microsoft Office 2010 Access 14.0.7268.5000(32bit)
仮想マシン CentOS6.7
データベース PostgreSQL9.4.4
ODBCドライバ psqlodbc_16_00_0000-x86.zip
ODBCドライバ インストール
ダウンロード
ブラウザで次のページから「psqlodbc_16_00_0000-x86.zip」をダウンロードします。
https://www.postgresql.org/ftp/odbc/versions/msi/
展開(解凍)
ダウンロードした圧縮ファイル「psqlodbc_16_00_0000-x86.zip」を右クリックしてすべて展開(解凍)します。
インストール
解凍されたインストーラーファイル「psqlodbc_x86.msi」を起動します。すべてデフォルトのままで大丈夫です。
ODBCドライバのインストールが完了しました。
ODBC接続データソース設定
Windows スタートメニューで「odbc」を入力・検索し、ODBC Data Source (32bit)を実行します。
アクセスなどのアプリケーションから接続する為のデータソースを新規追加します。
先ほどインストールしたODBCドライバ「PostgreSQL ANSI」「PostgreSQL Unicode」が選択肢に現れます。ここではデータベースサーバで日本語を扱っているので「PostgreSQL Unicode」を選びます。
データベース情報
ファイアーウォールがない仮想マシンですが、LANネットワークからパスワード認証で接続する許可設定が必要です。CentOS の PostgreSQL9.4.4 の場合は「/var/lib/pgsql/9.4/data/pg_hda.conf」に次の行を追加してデータベースを再起動しておきます。LANが例えば 192.168.0.~ なら「192.168.56.1/32」を「192.168.0.1/32」に書き換えてください。
host all all 192.168.56.1/32 password
サーバー名:192.168.56.120 (CentOSのIPアドレス)
Port:5432 (PostgreSQLのデフォルト接続ポート)
データベース名:CentPostgreSQL
ユーザー名:postgres
テスト接続に成功したら「保存」します。
ODBCデータソース「Postgre16u」が追加できました。アプリケーションから利用する識別名なので分かりやすい命名がポイントです。
MS Access から ODBC接続
Microsoft Accessを起動します。
●「インポート」は、データベースサーバーから複製したローカルデータを操作します。
●「リンク」は、データベースサーバーのデータを直接操作します。
「コンピューターデータソース」タブに切り替え、先ほど追加したODBCデータソース「Postgre16u」を選んで「OK」します。
テーブル・ビュー一覧から選び「OK」するとアクセスのテーブルとして操作できます。
おわり
データベースサーバーを覗くことが出来たでしょうか。ODBC接続に対応したエクセルやファイルメーカーなどのアプリケーションでも利用できます。MySQLデータベースでも同様の手順で利用可能ですよ。
この記事が気に入ったらサポートをしてみませんか?