EXPORT_DATAのDBMS_CLOUDパッケージ・フォーマット・オプション

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

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

format引数を指定するには:

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

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

typeparquetの場合

compression: gzip | snappy

デフォルト値: snappy

タイプがdatapumpの場合

compression: BASIC|LOW|MEDIUM|HIGH

delimiter

カスタム・フィールド・区切り文字を指定します。

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

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

ノート

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

delimiter : character

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

endquote

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

次に例を示します。

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

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

endquote:character

デフォルト値: 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 (10 MB)

quote

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

ノート

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

quote: character

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

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