LoginSignup
1
0

More than 1 year has passed since last update.

PostgreSQLにODBC接続する

Last updated at Posted at 2023-04-11

環境

Rails5.2
PostgreSQL 12.10
Windows10 + Vagrant

はじめに

Railsにおける開発でテストデータを作成する場合、いちいちSQL文を書いて作成しなくてはいけないのだろうか。自分が以前、OracleやSQLServerを使ってクラサバの開発をしていた頃、AccessからODBC接続をおこない、テーブルリンクに直接手入力をして、テストデータを作成していました。それに比べ、Web開発の場合は、たかが1件のテストデータを更新するのに、わざわざSQL文を書かなくてはいけないのだろうか。Web開発においても、PostgreSQLを使っている場合であれば、pgAdminを使ってテストデータを直接手修正することができます。しかし、正直使い勝手はいいとはいえません。pgAdminを使うと、テーブルを選択して左クリックをして「View/Edi Data→All Rows」を選択し、データを全件表示させればデータを手修正できるようになります。しかし、1項目を修正する度に小ウィンドウが表示されて、OKボタンを押すといった操作が必要です。数件程度のデータであれば、このやり方で問題はないでしょうが、データ件数が数十件となると、このようなやり方は、とてもではないが、やってられなくなります。更に、Select文で、表示件数を度絞り込んだ後に、手修正するといったことが、pgAdminではできないことになります。

もっと、簡単にテストデータが作成できないものだろうか。そこで思いついたのが、AccessをPostgreSQLとODBC接続する方法です。Macを使って開発をしている人であれば、このような発想はなかっただろうと思います。Windowsを使っている人の特権かもしれません。

ODBCの設定

  • コントロールパネルから「ODBC Data Sources(32-bit)」を選択します。
  • ユーザーDSNで、ユーザーデータソースを追加します。
  • 下記のように設定します。
    無題1.png

注意点
PostgreSQLのドライバーは、Unicode版ではなく、ANSI版を選択してください。
PostgreSQLは標準でSSL接続をサポートしているため、SSL Modeを無効にすると上手く行きません。

  • テストボタンをクリックして、このように出てくればOKです。
    無題2.png

Accessから接続

  • Accessを起動します。

  • 外部データから、ODBCデータベースを選択します。

  • 「リンクテーブルを作成してソースデータにリンクする」にチェックを付けてOKをクリックします。

  • 作成した、データソースを選択します。

  • PostgreSQLに作成したテーブルの一覧が表示されるため、全て選択してOKをクリックします。
    無題3.png

  • このように、Accessにリンクが張れました。
    無題.png

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0