# PostgreSQL 関数

## 注意

> 注意:

> すべての関数がすべての構築環境でサポートされるわけではありません。 サポートされる関数は、使用する libpq（PostgreSQL の C クライアント ライブラリ）のバージョンと libpq のコンパイル方法に依存します。 もし PHP の PostgreSQL 拡張モジュールに足りない関数がある場合、 原因は libpq がその関数をサポートしていないことです。

> 注意:

> ほとんどの PostgreSQL 関数は、オプションの第 1 引数として `connection` を受け付けます。もしこれを 指定しなかった場合、直近にオープンされた接続を使用します。 そのような接続が存在しなかった場合、関数は `FALSE` を返します。

> 注意:

> PostgreSQL は、オブジェクトの生成時やクエリの実行時に 識別子（例: テーブル名・カラム名）を自動的に小文字に変換します。 この自動変換を防ぐには、識別子をダブルクォート（""）でエスケープする 必要があります。

> 注意:

> PostgreSQL には、データベースのスキーマ情報（例: データベース内の すべてのテーブルなど）を取得するための特別なコマンドがありません。 その代わりに、PostgreSQL 7.4 以降では information_schema という標準スキーマが存在し、必要な情報が検索しやすい形式で格納されています。 詳しい情報は » PostgreSQL ドキュメンテーション を参照ください。

## 目次

- pg_affected_rows — 変更されたレコード(タプル)の数を返す
- pg_cancel_query — 非同期クエリを取り消す
- pg_client_encoding — クライアントのエンコーディングを取得する
- pg_close — PostgreSQL 接続をクローズする
- pg_connect_poll — 進行中の非同期 PostgreSQL 接続試行のステータスをポーリングする
- pg_connect — PostgreSQL 接続をオープンする
- pg_connection_busy — 接続がビジーかどうか調べる
- pg_connection_reset — 接続をリセット(再接続)する
- pg_connection_status — 接続ステータスを取得する
- pg_consume_input — 接続の入力を読み取る
- pg_convert — 連想配列の値を、SQL 文として実行可能な形式に変換する
- pg_copy_from — 配列からテーブルに挿入する
- pg_copy_to — 配列にテーブルをコピーする
- pg_dbname — データベース名を取得する
- pg_delete — レコードを削除する
- pg_end_copy — PostgreSQL バックエンドと同期する
- pg_escape_bytea — bytea フィールドに挿入するために文字列をエスケープする
- pg_escape_identifier — テキスト型フィールドに挿入するために、識別子をエスケープする
- pg_escape_literal — テキスト型フィールドに挿入するために、リテラルをエスケープする
- pg_escape_string — クエリに使う文字列をエスケープする
- pg_execute — 指定したパラメータを用いてプリペアドステートメントを実行するリクエストを 送信し、その結果を待つ
- pg_fetch_all_columns — 指定したカラムの全ての行を配列として取得する
- pg_fetch_all — 取得されたすべての行を配列として取得する
- pg_fetch_array — 行を配列として取得する
- pg_fetch_assoc — 行を連想配列として取得する
- pg_fetch_object — 行をオブジェクトとして得る
- pg_fetch_result — 結果リソースから値を返す
- pg_fetch_row — 数値添字の配列として行を得る
- pg_field_is_null — フィールドが SQL の NULL かどうか調べる
- pg_field_name — フィールドの名前を返す
- pg_field_num — 指定されたフィールドのフィールド番号を返す
- pg_field_prtlen — 表示される長さを返す
- pg_field_size — 指定したフィールドの内部記憶領域におけるサイズを返す
- pg_field_table — tables フィールドの名前あるいは oid を返す
- pg_field_type_oid — フィールド番号に対応する型 ID（OID）を返す
- pg_field_type — フィールド番号に対応する型名を返す
- pg_flush — アウトバウンドクエリデータを接続へフラッシュする
- pg_free_result — メモリを開放する
- pg_get_notify — SQL NOTIFY メッセージを取得する
- pg_get_pid — バックエンドのプロセス ID を得る
- pg_get_result — 非同期クエリの結果を取得する
- pg_host — 接続に関連するホスト名を返す
- pg_insert — テーブルに配列を挿入する
- pg_last_error — 特定の接続から直近のエラーメッセージ文字列を取得する
- pg_last_notice — PostgreSQL サーバーからの直近の通知メッセージを返す
- pg_last_oid — 直近の行のオブジェクト ID を返す
- pg_lo_close — ラージオブジェクトをクローズする
- pg_lo_create — ラージオブジェクトを生成する
- pg_lo_export — ラージオブジェクトをファイルにエクスポートする
- pg_lo_import — ファイルからラージオブジェクトをインポートする
- pg_lo_open — ラージオブジェクトをオープンする
- pg_lo_read_all — ラージオブジェクト全体を読み込みブラウザに直接送信する
- pg_lo_read — ラージオブジェクトを読み込む
- pg_lo_seek — ラージオブジェクトの位置をシークする
- pg_lo_tell — ラージオブジェクトのカレントのシーク位置を返す
- pg_lo_truncate — Truncates a large object
- pg_lo_unlink — ラージオブジェクトを削除する
- pg_lo_write — ラージオブジェクトを書く
- pg_meta_data — テーブルからメタデータを取得する
- pg_num_fields — フィールド数を返す
- pg_num_rows — 行数を返す
- pg_options — 接続に関連するオプションを取得する
- pg_parameter_status — サーバーのパラメータ設定を検索する
- pg_pconnect — 持続的な PostgreSQL 接続をオープンする
- pg_ping — データベース接続を調べる
- pg_port — 接続に関連するポート番号を返す
- pg_prepare — 指定したパラメータでプリペアドステートメントを作成するリクエストを 送信し、その完了を待つ
- pg_put_line — NULL で終わる文字列を PostgreSQL バックエンドに送信する
- pg_query_params — SQL コマンドとパラメータを分割してサーバーへ送信し、その結果を待つ
- pg_query — クエリを実行する
- pg_result_error_field — エラー報告の各フィールドを返す
- pg_result_error — 結果に関連するエラーメッセージを取得する
- pg_result_seek — 結果リソースの内部行オフセットを設定する
- pg_result_status — クエリ結果のステータスを取得する
- pg_select — レコードを選択する
- pg_send_execute — 指定したパラメータでプリペアドステートメントを実行するリクエストを 送信し、その結果を待たない
- pg_send_prepare — 指定したパラメータでプリペアドステートメントを作成するリクエストを 送信し、その結果を待たない
- pg_send_query_params — コマンドとパラメータを分割してサーバーに送信し、その結果を待たない
- pg_send_query — 非同期クエリを送信する
- pg_set_client_encoding — クライアントのエンコーディングを設定する
- pg_set_error_verbosity — pg_last_error および pg_result_error が返すメッセージの詳細度を指定する
- pg_socket — Get a read only handle to the socket underlying a PostgreSQL connection
- pg_trace — PostgreSQL 接続のトレースを有効にする
- pg_transaction_status — サーバー上で実行中のトランザクションの状態を返す
- pg_tty — 接続に関する TTY 名を返す
- pg_unescape_bytea — bytea 型のバイナリをアンエスケープする
- pg_untrace — PostgreSQL 接続のトレースを無効にする
- pg_update — テーブルを更新する
- pg_version — クライアント・プロトコル・サーバーのバージョンを配列で返す