[11/15開催: PostgreSQL Conference Japan 2019 参加受付中] 
他のバージョンの文書 11 | 10 | 9.6 | 9.5 | 9.4 | 9.3 | 9.2 | 9.1 | 9.0 | 8.4 | 8.3 | 8.2 | 8.1 | 8.0 | 7.4 | 7.3 | 7.2

1.2. データベース接続関数

PostgreSQL のバックエンドサーバとの接続を作成するには、以下のルーチンを使用します。 アプリケーションプログラムは、バックエンドとの接続を一度に複数個開くことができます (1 つの理由として、複数のデータベースへのアクセスが挙げられます)。 個々の接続は、PQconnectdb または PQsetdbLogin を呼び出すことで得られる PGconn オブジェクトによって表されます。 なおこれらの関数は、PGconn オブジェクトに割り当てるほんのわずかなメモリの余裕さえもない場合を除き、NULL ではなく常にオブジェクトのポインタを返します。 またこの接続オブジェクトを通じて問い合わせを送る前に、PQstatus 関数を呼び出して、データベースとの接続に成功したかどうかをチェックすべきでしょう。

libpq アプリケーションプログラマは PGconn による抽象化に注意を払うべきです。 PGconn の内容は以下に挙げるアクセッサ関数を使って取り出してください。 PGconn 構造体中のフィールドは将来予告なく変更されることがありますので、直接フィールドを参照することは避けてください。(PostgreSQL リリース 6.4 から、PGconn 構造体 の定義を libpq-fe.h の中から外しました。 以前作成したプログラムが PGconn のフィールドを直接操作している場合、libpq-int.h をインクルードすれば使い続けることができます。 しかしそのプログラムは是非とも修正してください。)