15.3 ADD_COLUMNプロシージャ
このプロシージャは、列のコレクションに列を追加します。列のサブセットのみをリクエストするために、列のコレクションをOPEN_*_CONTEXT
コールに渡すことができます。これは、SQL文が含まれないWebソースに特に役立ちます。列配列を渡さない場合や、空の列配列を渡した場合は、Webソースに定義されているすべての列がフェッチされます。
構文
procedure add_column(
p_columns in out nocopy t_columns,
p_column_name in varchar2,
p_data_type in t_data_type default null,
p_sql_expression in varchar2 default null,
p_format_mask in varchar2 default null,
p_is_primary_key in boolean default false,
p_is_query_only in boolean default false,
p_is_returning in boolean default false,
p_is_checksum in boolean default false );
パラメータ
表15-1 ADD_COLUMNプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
列配列。 |
|
列名。 |
|
列のデータ型。 |
|
他の列から列を導出するためのSQL式。 |
p_format_mask |
この列に使用する書式マスク。 |
p_is_primary_key |
主キー列かどうか(デフォルトはfalse)。 |
p_is_query_only |
問合せのみの列をDMLコンテキストに書き込みません(デフォルトはfalse)。 |
p_is_returning |
DMLの実行後に、RETURNING列を取得するかどうか(デフォルトはfalse)。 |
p_is_checksum |
チェックサム(行バージョン)列であるかどうか(デフォルトはfalse)。 |
例
declare
l_columns apex_exec.t_columns;
l_context apex_exec.t_context;
begin
apex_exec.add_column(
p_columns => l_columns,
p_column_name => 'ENAME' );
apex_exec.add_column(
p_columns => l_columns,
p_column_name => 'SAL' );
l_context := apex_exec.open_web_source_query(
p_module_static_id => '{web source module static ID}',
p_columns => l_columns
p_max_rows => 1000 );
while apex_exec.next_row( l_context ) loop
-- process rows here ...
end loop;
apex_exec.close( l_context );
exception
when others then
apex_exec.close( l_context );
raise;
end;
親トピック: APEX_EXEC