21.6 ZIPファンクション
このファンクションは、ファイルのリスト(通常はAPEX_EXPORT
ルーチンのいずれかから取得)を、.zip
アーカイブを含む単一のBLOBに圧縮します。結果となる.zip
ファイル内のすべてのテキスト・コンテンツは、UTF-8としてエンコードされます。
アプリケーション・エクスポートでファイルが誤って上書きされないように、アーカイブ内のすべてのファイルの名前を一意にする必要があります(そうでない場合は、例外が発生します)。
結果となるアーカイブに、単純なREADME.txt
ファイルやライセンス情報などのその他のファイル(p_extra_files
)を追加することもできます。
構文
APEX_EXPORT.ZIP (
p_source_files apex_t_export_files,
p_extra_files apex_t_export_files DEFAULT apex_t_export_files() )
RETURN BLOB;
パラメータ
表21-6 ZIPのパラメータ
パラメータ | 説明 |
---|---|
p_source_files |
ファイルの表。たとえば、apex_export.get_application からのもの。
|
p_extra_files |
結果となる.zip アーカイブに追加する他のオプションのファイル。
|
戻り値
このファンクションは、圧縮されたアプリケーション・ファイルと追加ファイルを含むBLOBをZIP形式で返します。
例
DECLARE
l_source_files apex_t_export_files;
l_extra_files apex_t_export_files;
l_zip blob;
BEGIN
l_source_files := apex_export.get_application(
p_application_id => 100,
p_split => true );
l_extra_files := apex_t_export_files(
apex_t_export_file(
name => 'README.md',
contents => 'An example exported application.' ),
apex_t_export_file(
name => 'LICENSE.txt',
contents => 'The Universal Permissive License (UPL), Version 1.0' ) );
l_zip := apex_export.zip(
p_source_files => l_source_files,
p_extra_files => l_extra_files );
sys.dbms_output.put_line(
'Compressed application export to zip of size; '
|| sys.dbms_lob.getLength( l_zip ) );
END;
親トピック: APEX_EXPORT