他のバージョンの文書 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.9. ユーティリティ関数

plpyでは、plpy.debug(msg)plpy.log(msg)plpy.info(msg)plpy.notice(msg)plpy.warning(msg)plpy.error(msg)、およびplpy.fatal(msg)関数を提供しています。 plpy.errorおよびplpy.fatalは、実際にPythonの例外を発生させます。 これが捕捉されない場合、呼び出し中の問い合わせ外部に伝わり、その結果、現在のトランザクションもしくはサブトランザクションがアボートします。 raise plpy.Error(msg)およびraise plpy.Fatal(msg)は、それぞれplpy.errorおよびplpy.fatalの呼び出しと同じです。 他の関数は異なる重要度のメッセージを生成するだけです。 log_min_messagesclient_min_messages設定変数は、特定の重要度のメッセージをクライアントに報告するか、サーバのログに書き出すか、あるいはその両方かを制御します。 詳細は18章サーバの設定を参照してください。

この他のユーティリティ関数群にはplpy.quote_literal(string)plpy.quote_nullable(string)およびplpy.quote_ident(string)があります。 これらは9.4. 文字列関数と演算子で説明する組込みの引用符付け関数と同等です。 これらはその場限りの問い合わせを構築する時に有用です。 例40.1「動的問い合わせの中の値の引用符付け」の動的SQLと同等なPL/Pythonを以下に示します。

plpy.execute("UPDATE tbl SET %s = %s WHERE key = %s" % (
    plpy.quote_ident(colname),
    plpy.quote_nullable(newvalue),
    plpy.quote_literal(keyvalue)))