PostgreSQLへC言語で接続する

MySQLが一段落したので今度はPostgreSQLへ接続してみます。

ソースファイルはこちら(C言語)
pg20060521-1

PostgreSQLとMySQLでは値の取り出し方法が違うみたいですね。C++でクラス化する際には共通のほ方法で利用できるように考慮したほうが良いですね。(DBI使ったほうが早いとか置いといて)

もうひとつ重大な問題がこのソースにはあります。SELECTで*を指定しておいて取り出し時に何番目というやり方で行っていること。つまりテーブルのフィールドに追加変更があった場合にプログラムが動かなくなってしまう危険があります。単にSELECTで*を使わなければ良いのですがそれでも要素名でアクセスできないのは可読性に影響します。

C++版は以上を考慮に入れてMySQL版と移植性の高いものを作ってみます。