ストアド・サブプログラムについて
ストアド・サブプログラムは、データベースに格納されたサブプログラムです。ストアド・サブプログラムは、データベースに格納されているため、多様なデータベース・アプリケーションのビルディング・ブロックとして使用できます。
サブプログラムとは、特定の問題を解決したり、一連の関連タスクを実行するSQLおよびPL/SQL文で構成されるPL/SQLユニットです。1つのサブプログラムに複数のパラメータを設定でき、その値は呼出し元によって指定されます。サブプログラムは、プロシージャの場合もファンクションの場合もあります。通常、処理の実行にはプロシージャを、値を計算して返すにはファンクションを使用します。
ストアド・サブプログラムはデータベースに格納されているため、様々なデータベース・アプリケーションのビルディング・ブロックとしてストアド・プログラムを使用できます。別のサブプログラムまたは無名のブロック内で宣言されたサブプログラムを、ネストされたサブプログラムまたはローカル・サブプログラムと呼びます。宣言されたサブプログラムまたはブロックの外部から呼び出すことはできません。無名ブロックとは、データベースに格納されていないブロックです。
2種類のストアド・サブプログラムがあります。
-
スタンドアロン・サブプログラムは、スキーマ・レベルで作成されます。
-
パッケージ・サブプログラムは、パッケージ内に作成されます。
スタンドアロン・サブプログラムは、プログラム・ロジックのテストに役立ちますが、意図したとおりに動作することが確実な場合は、パッケージに入れます。
関連情報:
-
ストアド・サブプログラムの一般情報は、『Oracle Database概要』を参照してください。
-
Oracle Database PL/SQL Language Reference for complete information about PL/SQL subprograms