AnalyticDB for PostgreSQL のストアドプロシージャは、コンパイルされて永続的に保存される一連の SQL ステートメントをカプセル化したものです。ストアドプロシージャを呼び出すには、その名前とパラメーターを指定します。
AnalyticDB for PostgreSQL は、データベースに同梱されている手続き型言語である PL/pgSQL で記述されたストアドプロシージャをサポートしています。
PL/pgSQL - SQL 手続き型言語
PL/pgSQL は、AnalyticDB for PostgreSQL に同梱されている、使いやすくロード可能な手続き型言語です。SQL をプログラミング構造で拡張し、データベース内に複雑なロジックを構築できます。
PL/pgSQL は、以下の機能をサポートしています:
関数とトリガープロシージャ — 再利用可能な関数とイベント駆動のトリガーロジックを作成します
制御構造 — SQL プロシージャ内で条件式、ループ、分岐を使用します
複雑な計算 — 単一の SQL ステートメントがサポートする範囲を超える、複数ステップの計算を実行します
ユーザー定義型、関数、演算子 — データモデルに合わせて型システムとクエリ言語を拡張します
サーバーから信頼された実行 — プロシージャはサーバーレベルの信頼で実行されます
PL/pgSQL で記述された関数は、組み込みの AnalyticDB for PostgreSQL 関数と同じコンテキストで動作します。たとえば、複雑な条件式でカスタム演算子やインデックス関数を定義できます。