PostgreSQL 7.3 プログラマガイド

PostgreSQL グローバル開発グループ


Table of Contents
はじめに
1. 本書の構成
I. クライアントインタフェース
1. libpq - C ライブラリ
1.1. 序文
1.2. データベース接続関数
1.3. 問い合わせ実行関数
1.4. 非同期問い合わせ関数
1.5. 近道インタフェース
1.6. 非同期通知
1.7. COPY コマンドに関連した関数
1.8. libpq トレース関数
1.9. libpq 制御関数
1.10. 環境変数
1.11. ファイル
1.12. スレッドの振る舞い
1.13. Libpq プログラムの構築
1.14. サンプルプログラム
2. ラージオブジェクト
2.1. 序文
2.2. 実装機能
2.3. インタフェース
2.4. サーバ側の組み込み関数
2.5. Libpqからラージオブジェクトへのアクセス
3. pgtcl - Tcl 結合ライブラリ
3.1. 序文
3.2. アプリケーションへの pgtcl のロード
3.3. pgtcl コマンドリファレンス情報
4. ECPG――C言語での埋め込みSQL
4.1. 概念
4.2. データベースサーバへの接続
4.3. 接続を閉じる
4.4. SQL コマンドの実行
4.5. データを渡す
4.6. エラー処理
4.7. ファイルのインクルード
4.8. 埋め込み SQL プログラムの処理
4.9. ライブラリ関数
4.10. 他のRDBMSパッケージからの移植
4.11. 開発者向けに
5. JDBC インタフェース
5.1. JDBC ドライバのセットアップ
5.2. ドライバの使用
5.3. 問い合わせの発行と結果の処理
5.4. 更新の実行
5.5. データベースオブジェクトの作成と変更
5.6. バイナリデータの格納
5.7. PostgreSQLJDBC API への拡張
5.8. マルチスレッドあるいはサーブレット環境におけるドライバの使用
5.9. 接続プールとデータソース
5.10. 今後に読むべきもの
6. PyGreSQL - Python インタフェース
6.1. pg モジュール
6.2. pg モジュール関数
6.3. 接続オブジェクト:pgobject
6.4. データベースラッパクラス:DB
6.5. 問い合わせ結果オブジェクト:pgqueryobject
6.6. ラージオブジェクト:pglarge
II. サーバプログラミング
7. 基本設計構造
7.1. PostgreSQL の基本設計構造の概念
8. SQL の拡張――概略
8.1. 拡張の作用法
8.2. PostgreSQLの型システム
8.3. PostgreSQLシステムカタログについて
9. SQL の拡張:関数
9.1. 序文
9.2. 問い合わせ言語 (SQL) 関数
9.3. 手続き型言語関数
9.4. 内部関数
9.5. C 言語関数
9.6. 関数のオーバライド
9.7. テーブル関数
9.8. 手続き言語ハンドラ
10. SQL の拡張:データ型
11. SQLの拡張:演算子
11.1. 序文
11.2.
11.3. 演算子最適化に関する情報
12. SQLの拡張――集約
13. ルールシステム
13.1. 序文
13.2. 問い合わせツリーとは
13.3. ビューとルールシステム
13.4. INSERT、UPDATE、DELETEについてのルール
13.5. ルールと権限
13.6. ルールおよびコマンドの状態
13.7. ルール対トリガ
14. インデックス拡張機能へのインタフェース
14.1. 序文
14.2. アクセスメソッドおよび演算子クラス
14.3. アクセスメソッドのストラテジ
14.4. アクセスメソッドのサポートルーチン
14.5. 演算子とサポートルーチンの作成
14.6. 演算子クラスの作成
14.7. 演算子クラスの特殊な機能
15. インデックスコスト概算関数
16. トリガ
16.1. トリガ定義
16.2. トリガマネージャとの関係
16.3. データ変更時の可視性
16.4.
17. サーバープログラム開発用インターフェイス
17.1. インターフェイス関数
17.2. インタフェースサポート関数
17.3. メモリ管理
17.4. データ変更時の可視性
17.5.
III. 手続き言語
18. 手続き言語
18.1. 序文
18.2. 手続き言語のインストール
19. PL/pgSQL - SQL 手続き言語
19.1. 概要
19.2. PL/pgSQL の構造
19.3. 宣言
19.4.
19.5. 基本的な文
19.6. 制御構造
19.7. カーソル
19.8. エラーとメッセージ
19.9. トリガプロシージャ
19.10.
19.11. Oracle PL/SQL からの移植
20. PL/Tcl - Tcl 手続き型言語
20.1. 概要
20.2. 説明
21. PL/Perl - Perl 手続き言語
21.1. PL/Perl 関数と引数
21.2. PL/Perl におけるデータ値
21.3. PL/Perlからのデータベースアクセス
21.4. 信頼された PL/Per および信頼されない PL/Perl
21.5. 存在しない機能
22. PL/Python - Python 手続き言語
22.1. PL/Python 関数
22.2. トリガ関数
22.3. データベースアクセス
22.4. 制限された環境
List of Tables
3-1. pgtcl コマンド
5-1. ConnectionPoolDataSource 実装
5-2. ConnectionPoolDataSource 構成プロパティ
5-3. DataSource 実装
5-4. DataSource 構成プロパティ
5-5. 追加のプール DataSource 構成プロパティ
8-1. PostgreSQLシステムカタログ
9-1. PostgreSQL の組み込み型と同等な C 言語型
14-1. B-tree ストラテジ
14-2. ハッシュストラテジ
14-3. R-tree ストラテジ
14-4. B-tree サポート関数
14-5. ハッシュサポート関数
14-6. R-tree サポート関数
14-7. GiST サポート関数
19-1. シングルクォートのエスケープ図
List of Figures
7-1. 接続確立の方法
8-1. 主要なPostgreSQLシステムカタログ
List of Examples
1-1. libpq サンプルプログラム 1
1-2. libpq サンプルプログラム 2
1-3. libpq サンプルプログラム 3
2-1. Libpq を使用したラージオブジェクトのプログラム例
3-1. pgtcl プログラム例
5-1. JDCB で簡単な問い合わせを処理
5-2. 簡単な削除例
5-3. テーブル削除の例
5-4. バイナリデータの例
5-5. ConnectionPoolDataSource 構成の例
5-6. DataSource コード例
5-7. DataSource JNDI コード例
18-1. PL/pgSQL の手作業によるインストール
19-1. PL/pgSQL トリガプロシージャの例
19-2. 整数値をインクリメントする簡単な PL/pgSQL 関数
19-3. 文字列連結の簡単な PL/pgSQL 関数
19-4. 複合型を使った PL/pgSQL 関数
19-5. 簡単な関数
19-6. 他の関数を作り出す関数
19-7. たくさんの文字列操作プロシージャと、OUT パラメータ