他のバージョンの文書 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

第 43章PL/Python - Python手続き言語

目次
43.1. Python 2対Python 3
43.2. PL/Python関数
43.3. データ値
43.3.1. データ型の対応付け
43.3.2. NullとNone
43.3.3. 配列、リスト
43.3.4. 複合型
43.3.5. 集合を返す関数
43.4. データの共有
43.5. 匿名コードブロック
43.6. トリガ関数
43.7. データベースアクセス
43.7.1. データベースアクセス関数
43.7.2. エラーの捕捉
43.8. 明示的サブトランザクション
43.8.1. サブトランザクションのコンテキスト管理
43.8.2. Pythonの旧式バージョン
43.9. ユーティリティ関数
43.10. 環境変数

PL/Python手続き言語を使用してPostgreSQLの関数をPython言語で作成することができます。

PL/Pythonを特定のデータベースにインストールするには、CREATE EXTENSION plpythonuを使用するか、またはシェルのコマンドラインからcreatelang plpython dbnameを使用してください (ただし項43.1も参照してください)。

ティップ: 言語をtemplate1にインストールすると、その後に作成されるデータベース全てにその言語は自動的にインストールされます。

PostgreSQL 7.4より、PL/Pythonは"信頼されない"、つまり、ユーザが実行可能なことを制限する方法を提供しない言語としてのみ利用可能です。 したがって、plpythonuという名前に変更されました。 Pythonで新しい安全な実行手法が開発されたら、将来信頼できるplpythonの亜種は利用可能になるかもしれません。 データベース管理者としてログインしたユーザにより行えることをすべて行うことができますので、信頼されないPL/Pythonによる関数開発者は、その関数は不必要なものを行うために使用できないことに注意しなければなりません。 スーパーユーザのみがplpythonuなどの信頼されない言語で関数を作成することができます。

注意: ソースパッケージを使用するユーザは、インストール処理の過程でPL/Pythonの構築が有効になるように指定する必要があります。 (詳細については、インストール手順を参照してください。) バイナリパッケージを使用する場合は、別のサブパッケージにPL/Pythonが入っている可能性があります。