EXPORT_DATAのDBMS_CLOUDパッケージ形式オプション

テキスト・ファイル形式、CSV、JSON、ParquetまたはXML、およびOracle Data PumpのDBMS_CLOUD.EXPORT_DATAの有効なフォーマット・パラメータ・オプションについて説明します。

これらは、DBMS_CLOUD.EXPORT_DATAで使用する有効なformatパラメータです。format typeオプションを使用し、値がcsvjsonparquetまたはxmlのいずれかである場合は、テキスト・ファイルの出力を指定します。これは、format typedatapumpの場合のformatオプションも示します。

format引数を指定するには、次の2つの方法があります。

format => '{"format_option" : “format_value” }'  

および:

format => json_object('format_option' value 'format_value'))

例:

format => json_object('type' VALUE 'json')

複数のフォーマット・オプションを指定するには、値を","で区切ります。

たとえば:

format => json_object('compression' value 'gzip', 'type' value 'json')

この表は、formatパラメータのtypeオプションがCSV、JSON、ParquetまたはXMLのいずれかの場合のDBMS_CLOUD.EXPORT_DATAの書式オプションについて説明しています。その他のプロシージャおよびその他の出力タイプについては、DBMS_CLOUDパッケージ・フォーマット・オプションでフォーマット・オプションのリストを参照してください。

フォーマット・オプション 摘要 構文

compression

ソース・ファイルの圧縮タイプを指定します。

ノート: ZIPアーカイブ・フォーマットはサポートされていません。

format typecsvjsonまたはxmlの場合、デフォルトの圧縮はNullで、圧縮は行われません。

format typeparquetの場合、デフォルトの圧縮はsnappyです。

format typedatapumpの場合、サポートされているOracle Data Pumpアクセス・パラメータを指定できます。

  • compression: 有効値は、BASICLOWMEDIUMおよびHIGHです。

  • version: 有効な値は、COMPATIBLELATESTおよび指定したversion_numberです。

typecsv | json | xmlの場合

compression:gzip | zlib | zstd | bzip2

デフォルト値: 圧縮しないことを意味するNULL値。

typeparquetの場合

compression: gzip | snappy

デフォルト値: snappy

型がdatapumpの場合

compression: BASIC|LOW|MEDIUM|HIGH

delimiter

カスタム・フィールド・デリミタを指定します。

format => json_object('delimiter' value '|')

デリミタ値は、ASCIIコードまたはエスケープ文字にできません。

ノート

このオプションは、csv typeでのみ適用されます。

delimiter : character

デフォルト値、(カンマ)

endquote

quoteおよびendquoteを使用して、フィールドを2つのデリミタで囲むことができることを指定します。endquoteを指定しない場合、quote文字がデフォルトでendquote文字として使用されます。

たとえば:

format => JSON_OBJECT(‘quote’ value ‘(’, ‘endquote’ value ‘)’)
ノート

このオプションは、csv typeでのみ適用されます。

endquote:文字

デフォルト値: endquoteがないことを意味するNull。

escape

"\"文字を使用して、フィールド値の引用符文字を指定します。

ノート

このオプションは、csv typeでのみ適用されます。

escape : true

デフォルト値: false

encryption

フォーマット・オプションencryptionは、オブジェクト・ストアとの間でデータをエクスポートおよびインポートするための暗号化および復号化オプションを指定します。

encryptionを使用して、次のパラメータを指定して暗号化および復号化します。

  • user_defined_function: 指定されたBLOB (バイナリ・ラージ・オブジェクト)を復号化または暗号化するための完全修飾ユーザー定義関数を指定します。復号化または暗号化されたBLOBを返します。このパラメータは、encryptionの他のパラメータと相互に排他的です。

    たとえば、ADMIN.DECRYPTION_CALLBACKです。

  • type: 復号化または暗号化する組込み暗号化アルゴリズムを指定します。user_defined_functiontypeは相互に排他的です。

    typeは、ブロック暗号アルゴリズム+ブロック暗号連鎖修飾子+ブロック暗号パディング修飾子形式の値を受け入れます。

    サポートされているブロック暗号アルゴリズムは次のとおりです。

    • DBMS_CRYPTO.ENCRYPT_AES256

    サポートされているブロック暗号連鎖修飾子は次のとおりです。

    • DBMS_CRYPTO.CHAIN_CBC

    • DBMS_CRYPTO.CHAIN_CFB

    • DBMS_CRYPTO.CHAIN_ECB

    • DBMS_CRYPTO.CHAIN_OFB

    サポートされているブロック暗号パディング修飾子は次のとおりです。

    • DBMS_CRYPTO.PAD_PKCS5

    • DBMS_CRYPTO.PAD_NONE

    • DBMS_CRYPTO.PAD_ZERO

    • DBMS_CRYPTO.PAD_ORCL

  • credential_name: 暗号化キーを格納するために使用される資格証明を指定します。

これらのパラメータに値を指定しない場合、ブロック暗号連鎖修飾子およびブロック暗号パディング修飾子の値は、デフォルトでDBMS_CRYPTO.CHAIN_CBCおよびDBMS_CRYPTO.PAD_PKCS5に設定されます。

フォーマット・オプションencryptionは、次のDBMS_CLOUDプロシージャとともに使用されます。
  • 次のプロシージャの復号化のためにパラメータを渡すために使用されます。

    • DBMS_CLOUD.COPY_DATA

    • DBMS_CLOUD.CREATE_EXTERNAL_TABLE

    • DBMS_CLOUD.CREATE_HYBRID_TABLE

    • DBMS_CLOUD.COPY_COLLECTION

  • 次のプロシージャを暗号化するためのパラメータを渡すために使用します。

    • DBMS_CLOUD.EXPORT_DATA

たとえば:

format => JSON_OBJECT('encryption' value json_object ('type' value DBMS_CRYPTO.ENCRYPT_AES256 + DBMS_CRYPTO.CHAIN_CBC + DBMS_CRYPTO.PAD_PKCS5, 'credential_name' value 'ENCRYPTION_CRED'))
encryption:value

ここで、valueは、暗号化用の追加パラメータを提供するJSON文字列です:

type: value

暗号化タイプを指定します。

credential_name: value

暗号化キーの格納に使用される資格証明を指定します。

user_defined_function: value

指定されたBLOB (バイナリ・ラージ・オブジェクト)を復号化または暗号化するための完全修飾ユーザー定義関数を指定します。

header

csv型の出力ファイルの最初の行として列名を書き込みます。

headerオプションには、booleanまたは string値を指定できます。

有効な値は次のとおりです。
  • false: ヘッダー行をスキップします。

  • true: ヘッダー行を含みます。列名は、queryパラメータのSELECT文に基づいています。仮想列または仮想式を使用する場合は、SELECT文で列の別名を指定する必要があります。

  • String to define custom header names: ヘッダー行をカスタム名で定義できます。文字列値の列およびデリミタの数は、SELECT文の列およびデリミタの数と一致する必要があります。デフォルトのデリミタはカンマ(、)です。

たとえば:

format => JSON_OBJECT('type' value 'csv', 'delimiter' value '|', 'compression' value 'gzip', 'header' value true)
ノート

このオプションは、csv typeでのみ適用されます。

header: true| false| String to define custom header names

デフォルト値: false

fileextension

フォーマット・タイプのデフォルトの選択を上書きするカスタム・ファイル拡張子。これは、DBMS_CLOUD.EXPORT_DATA (CSV、JSON、ParquetまたはXML)を含むテキスト形式に適用されます。

指定された文字列がピリオド(ドット)で始まらない場合、最後のファイル名でファイル拡張子の前にドットが自動的に挿入されます。

ファイル拡張子が不要な場合は、値fileextension ='none'を使用します。

有効な値: 任意のファイル拡張子。

デフォルト値: format typeオプションによって異なります。
  • CSV形式: .csv
  • JSON形式: .json
  • PARQUET形式: .parquet
  • XML形式: .xml

maxfilesize

生成される出力の最大サイズのバイト数。

これは、format typeオプションがcsvjsonまたはxmlに設定されている場合に、DBMS_CLOUD.EXPORT_DATAを使用してデータをエクスポートするためのテキスト・ベースの形式に適用されます。

ノート: format typeオプションがparquetの場合、このオプションは無効です。

最小値: 10485760 (10 MB)

最大値: 1 GB

デフォルト値: 10485760 (10MB)

quote

CSV形式では、フィールドを2つのデリミタで囲むことができます。quoteおよびendquoteでデリミタを指定します。endquoteを指定しない場合、quote文字がデフォルトでendquote文字として使用されます。

ノート

このオプションは、csv typeでのみ適用されます。

quote: character

デフォルト値: NULLは、フィールドを引用符で囲まないことを意味します。

trimspaces

CSV形式の場合、フィールドの先頭と末尾のスペースをどのように切り捨てるかを指定します。quoteパラメータが指定されている場合は、フィールドを引用符で囲む前にトリム・スペースが適用されます。

trim_specの説明を参照してください。

ノート

このオプションは、csv typeでのみ適用されます。

trimspaces: rtrim| ltrim| notrim| lrtrim| ldrtrim

デフォルト値: notrim

type

出力ファイル・タイプを指定します。

csv: 問合せ結果を任意のカスタム文字で区切られた列値のセットとしてエクスポートできる、文字区切り値(CSV)形式を指定します。

json: 問合せ結果をJSONファイルとしてエクスポートすることを指定します。

parquet: 問合せ結果をParquetファイルとしてエクスポートすることを指定します。

xml: 問合せ結果を有効なXML文書の行としてエクスポートすることを指定します。各行は、<RECORD> </RECORD>のルートXMLタグにカプセル化されます。

問合せ結果は、XMLFOREST SQL関数を使用して自動的にXML形式に変換されます。列の別名を使用して、列のXMLタグ名をカスタマイズします。

format typedatapumpの場合、サポートされているOracle Data Pumpアクセス・パラメータを指定できます。

  • compression: 有効値は、BASICLOWMEDIUMおよびHIGHです。

  • version: 有効な値は、COMPATIBLELATESTおよび指定したversion_numberです。

詳細は、「access_parameters句」を参照してください。

type: csv|datapump|json|parquet|xml