他のバージョンの文書 16 | 15 | 14 | 13 | 12 | 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

パート V. サーバプログラミング

ここでは、ユーザ定義の関数、データ型、演算子、トリガなどを使用してサーバの機能を拡張する方法について説明します。 これらはおそらく、PostgreSQLに関するユーザ向けの文書を理解した後にのみたどり着く先進的な話題です。 また、最後の数章でPostgreSQLに附属するサーバサイドのプログラミング言語についても説明します。 同時にサーバサイドのプログラミング言語に関する一般的な問題についても説明します。 サーバサイドのプログラミング言語の章に進む前に、少なくとも、第37章(関数も説明しています)の最初の数節を読破することは重要です。

目次

37. SQLの拡張
37.1. 拡張の作用法
37.2. PostgreSQLの型システム
37.3. ユーザ定義関数
37.4. ユーザ定義プロシージャ
37.5. 問い合わせ言語(SQL)関数
37.6. 関数のオーバーロード
37.7. 関数の変動性分類
37.8. 手続き型言語関数
37.9. 内部関数
37.10. C言語関数
37.11. 関数最適化に関する情報
37.12. ユーザ定義の集約
37.13. ユーザ定義の型
37.14. ユーザ定義の演算子
37.15. 演算子最適化に関する情報
37.16. インデックス拡張機能へのインタフェース
37.17. 関連するオブジェクトを拡張としてパッケージ化
37.18. 拡張構築基盤
38. トリガ
38.1. トリガ動作の概要
38.2. データ変更の可視性
38.3. Cによるトリガ関数の作成
38.4. 完全なトリガの例
39. イベントトリガ
39.1. イベントトリガ動作の概要
39.2. イベントトリガ起動マトリクス
39.3. C言語によるイベントトリガ関数の書き方
39.4. 完全なイベントトリガの例
39.5. テーブル書き換えイベントトリガの例
40. ルールシステム
40.1. 問い合わせツリーとは
40.2. ビューとルールシステム
40.3. マテリアライズドビュー
40.4. INSERTUPDATEDELETEについてのルール
40.5. ルールと権限
40.6. ルールおよびコマンドの状態
40.7. ルール対トリガ
41. 手続き言語
41.1. 手続き言語のインストール
42. PL/pgSQL - SQL手続き言語
42.1. 概要
42.2. PL/pgSQLの構造
42.3. 宣言
42.4. 式
42.5. 基本的な文
42.6. 制御構造
42.7. カーソル
42.8. トランザクション制御
42.9. エラーとメッセージ
42.10. トリガ関数
42.11. PL/pgSQLの秘訣
42.12. PL/pgSQLによる開発向けのヒント
42.13. Oracle PL/SQLからの移植
43. PL/Tcl - Tcl手続き言語
43.1. 概要
43.2. PL/Tcl関数と引数
43.3. PL/Tclにおけるデータの値
43.4. PL/Tclにおけるグローバルデータ
43.5. PL/Tclからのデータベースアクセス
43.6. PL/Tclのトリガ関数
43.7. PL/Tclにおけるイベントトリガ関数
43.8. PL/Tclのエラー処理
43.9. PL/Tclにおける明示的サブトランザクション
43.10. トランザクション制御
43.11. PL/Tclの設定
43.12. Tclプロシージャ名
44. PL/Perl - Perl手続き言語
44.1. PL/Perl関数と引数
44.2. PL/Perlにおけるデータ値
44.3. 組み込み関数
44.4. PL/Perlにおけるグローバルな値
44.5. 信頼されたPL/Perlおよび信頼されないPL/Perl
44.6. PL/Perlトリガ
44.7. PL/Perlイベントトリガ
44.8. PL/Perlの内部
45. PL/Python - Python手続き言語
45.1. Python 2対Python 3
45.2. PL/Python関数
45.3. データ値
45.4. データの共有
45.5. 匿名コードブロック
45.6. トリガ関数
45.7. データベースアクセス
45.8. 明示的サブトランザクション
45.9. トランザクション制御
45.10. ユーティリティ関数
45.11. 環境変数
46. サーバプログラミングインタフェース
46.1. インタフェース関数
46.2. インタフェースサポート関数
46.3. メモリ管理
46.4. トランザクション管理
46.5. データ変更の可視性
46.6. 例
47. バックグラウンドワーカプロセス
48. ロジカルデコーディング
48.1. ロジカルデコーディングの例
48.2. ロジカルデコーディングのコンセプト
48.3. ストリームレプリケーションプロトコルインタフェース
48.4. ロジカルデコーディングSQLインタフェース
48.5. ロジカルデコーディング関連のシステムカタログ
48.6. ロジカルデコーディングの出力プラグイン
48.7. ロジカルデコーディング出力ライター
48.8. ロジカルデコーディングにおける同期レプリケーションのサポート
49. レプリケーション進捗の追跡