無料スクリプト配布のPHP.TO   PHPの実用的なtips PHPマニュアル MySQLマニュアル Apacheマニュアル PostgreSQLマニュアル マニュアル検索    

31.10. 制御関数

これらの関数は libpq の動作の各種詳細を制御します。

PQclientEncoding

クライアント符号化方式を返します。

int PQclientEncoding(const PGconn *

conn

);

これが EUC_JP などのシンボル文字列ではなく符号化方式IDを返すことに注意してください。 符号化方式IDを符号化方式名に変換するためには以下を使用してください。

char *pg_encoding_to_char(int 

encoding_id

);

PQsetClientEncoding

クライアント符号化方式を設定します。

int PQsetClientEncoding(PGconn *

conn

, const char *

encoding

);

conn はサーバへの接続、 encoding は使用したい符号化方式です。 この関数は符号化方式の設定に成功すると、ゼロを返します。 さもなくば-1を返します。 この接続における現在の符号化方式は PQclientEncoding を使用して決定することができます。

PQsetErrorVerbosity

PQerrorMessage PQresultErrorMessage で返されるメッセージの冗長度を決定します。

typedef enum
{
    PQERRORS_TERSE,
    PQERRORS_DEFAULT,
    PQERRORS_VERBOSE
} PGVerbosity;

PGVerbosity PQsetErrorVerbosity(PGconn *conn, PGVerbosity verbosity);

PQsetErrorVerbosity は冗長度モードを設定し、接続における以前の状態を返します。 TERSE モードでは、返されるメッセージには深刻度、主テキスト、位置のみが含まれます。 これは通常単一行に収まります。 デフォルトモードでは、上に加え、詳細、ヒント、文脈フィールドが含まれるメッセージが生成されます。 (これは複数行に跨るかもしれません。) VERBOSE モードでは、すべての利用可能なフィールドが含まれます。 冗長度の変更は、既に存在する PGresult オブジェクト内から取り出せるメッセージには影響を与えません。 その後に作成されたオブジェクトにのみ影響を与えます。

PQtrace

クライアント/サーバ間の通信トレースを有効にし、デバッグ用のファイルストリームに書き出します。

void PQtrace(PGconn *conn, FILE *stream);

注意: Windowsにおいて、 libpq ライブラリとアプリケーションを異なるフラグでコンパイルすると、この関数呼び出しで FILE ポインタの内部表現の違いによりアプリケーションはクラッシュするでしょう。 特に、このライブラリを使用するアプリケーションでは、マルチスレッド/シングルスレッド、リリース/デバッグ、静的リンク/動的リンクに関して、ライブラリと同じフラグを使わなければなりません。

PQuntrace

PQtrace によって起動されたトレース処理を無効にします。

void PQuntrace(PGconn *conn);


powered by SEO.CUG.NET