15.9 CREATE_COLLECTION_FROM_QUERYプロシージャ
指定された問合せからコレクションを作成します。問合せはアプリケーション所有者として解析されます。
このメソッドは、SELECT
句に最大50個の列を指定した問合せで使用できます。SELECT
句内のこれらの列は、コレクションの50個の文字属性(C001
からC050
)に移入されます。
同じ名前のコレクションが、カレント・アプリケーションIDの同じセッション内にカレント・ユーザー用として存在すると、アプリケーション・エラーが発生します。
構文
APEX_COLLECTION.CREATE_COLLECTION_FROM_QUERY (
p_collection_name IN VARCHAR2,
p_query IN VARCHAR2,
p_generate_md5 IN VARCHAR2 DEFAULT 'NO',
p_truncate_if_exists IN VARCHAR2 DEFAULT 'NO' )
パラメータ
パラメータ | 説明 |
---|---|
p_collection_name |
コレクションの名前。最大長は255文字です。このコレクションが、カレント・ユーザーの指定された名前で、同じセッションに存在すると、エラーが戻されます。 |
p_query |
コレクションのメンバーを移入するために実行する問合せ。 |
p_generate_md5 |
有効な値にはYES とNO が含まれます。YES の場合、コレクション・メンバーのデータのメッセージ・ダイジェストが計算されます。このパラメータは、コレクション・メンバーのMD5を別のメンバーと比較する場合か、そのメンバーが変更されたかどうかを確認する場合に使用します。
|
p_truncate_if_exists |
YES の場合、コレクションが存在していればコレクションのメンバーがまず切り捨てられ、エラーは発生しません。NO の場合(YES でない場合)、コレクションが存在していれば、エラーが発生します。
|
例
次の例では、AUTO
という名前のコレクションを作成し、AUTOS
表のデータを移入します。p_generate_md5
がYES
であるため、MD5
チェックサムが計算され、変更ステータスを判別するための比較が行われます。
BEGIN
l_query := 'select make, model, year from AUTOS';
APEX_COLLECTION.CREATE_COLLECTION_FROM_QUERY (
p_collection_name => 'AUTO',
p_query => l_query,
p_generate_md5 => 'YES');
END;
親トピック: APEX_COLLECTION