13.46 PIPE ROW文

PIPE ROW文はパイプライン・テーブル・ファンクションの本体内でのみ使用できます。この文はファンクションの起動元に表の行を戻します(制御は戻しません)。

注意:

  • パイプライン・テーブル・ファンクションが自律型トランザクションの一部である場合、コール元のサブプログラムでエラーが発生しないように、各PIPE ROW文の前にCOMMITまたはROLLBACKを実行する必要があります。

  • パフォーマンスを向上させるために、PL/SQLランタイム・システムでは、パイプ化された行が起動元にバッチで送信されます。

ここでのトピック

構文

pipe_row_statement ::=

セマンティクス

pipe_row_statement

row

ファンクションによって起動元に戻される行(表の要素)。表の要素の型を持つ式で表現します。

式がレコード変数の場合は、表の要素のデータ型を使用して明示的に宣言する必要があります。要素型と構造的にのみ一致するデータ型を使用して宣言することはできません。たとえば、要素型に名前が付いている場合は、%TYPEまたは%ROWTYPEを使用して明示的にレコード変数を宣言することや、カーソルFOR LOOP文内の%ROWTYPEを使用して暗黙的にレコード変数を宣言することはできません。

  • 例12-29パイプライン・テーブル・ファンクションの作成および起動

  • 例12-30パイプライン・テーブル・ファンクションによる各行の2つの行への変換

  • 例12-322つのカーソル変数パラメータを使用するパイプライン・テーブル・ファンクション

  • 例12-33集計ファンクションとしてのパイプライン・テーブル・ファンクション

  • 例12-34パイプライン・テーブル・ファンクションで処理されないNO_DATA_NEEDED

  • 例12-35パイプライン・テーブル・ファンクションで処理されるNO_DATA_NEEDED