Opzioni del formato del pacchetto DBMS_CLOUD per EXPORT_DATA

Descrive le opzioni dei parametri di formato valide per DBMS_CLOUD.EXPORT_DATA con formati file di testo, CSV, JSON, Parquet o XML e per Oracle Data Pump.

Questi sono i parametri format validi da utilizzare con DBMS_CLOUD.EXPORT_DATA. L'output del file di testo viene specificato quando si utilizza l'opzione format type e il valore è csv, json, parquet o xml. Vengono inoltre mostrate le opzioni format quando format type è datapump.

Di seguito sono riportati i due modi per specificare l'argomento del formato.

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

E:

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

Esempi:

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

Per specificare più opzioni di formato, separare i valori con ",".

Ad esempio:

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

In questa tabella vengono illustrate le opzioni di formato per DBMS_CLOUD.EXPORT_DATA quando l'opzione format del parametro type è una delle seguenti: CSV, JSON, Parquet o XML. Per informazioni su altre procedure e altri tipi di output, vedere DBMS_CLOUD Package Format Options per l'elenco delle opzioni di formato.

Opzione di formato Descrizione Sintassi

compression

Specifica il tipo di compressione del file di origine.

Nota: il formato di archiviazione ZIP non è supportato.

Se format type è csv, json o xml, la compressione predefinita è Null, ovvero nessuna compressione.

Quando format type è parquet, la compressione predefinita è snappy.

Quando format type è datapump, è possibile specificare i parametri di accesso di Oracle Data Pump supportati:

  • compression: i valori validi sono: BASIC, LOW, MEDIUM e HIGH.

  • version: i valori validi sono COMPATIBLE, LATEST e un version_number specificato.

Quando il type è:csv | json | xml

compression:gzip | zlib | zstd | bzip2

Valore predefinito: valore nullo senza compressione.

Quando type è parquet

compression: gzip | snappy

Valore predefinito: snappy

Quando il tipo è datapump

compression: BASIC|LOW|MEDIUM|HIGH

delimiter

Specifica un delimitatore di campo personalizzato.

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

Il valore del delimitatore non può essere un codice ASCII o un carattere di escape.

Nota

Questa opzione è valida solo con csv type.

delimiter: carattere

Valore predefinito , (virgola)

endquote

Specifica che i campi possono essere racchiusi tra due delimitatori, con quote e endquote. Se endquote non viene specificato, il carattere quote verrà utilizzato per impostazione predefinita come carattere endquote.

Ad esempio:

format => JSON_OBJECT(‘quote’ value ‘(’, ‘endquote’ value ‘)’)
Nota

Questa opzione è valida solo con csv type.

endquote:carattere

Valore predefinito: Null, ovvero endquote.

escape

Specifica la ricorrenza del carattere virgolette nel valore del campo utilizzando il carattere "\".

Nota

Questa opzione è valida solo con csv type.

escape : true

Valore predefinito: false

encryption

L'opzione di formato encryption specifica le opzioni di cifratura e decifrazione per esportare e importare dati da e verso l'area di memorizzazione degli oggetti.

Usare encryption per specificare i seguenti parametri per la cifratura e la decifrazione:

  • user_defined_function: specifica una funzione completamente qualificata definita dall'utente per decifrare o cifrare il BLOB (binary large object) specificato. Restituisce un oggetto BLOB decifrato o cifrato. Questo parametro si escludono a vicenda con altri parametri per encryption.

    Ad esempio, ADMIN.DECRYPTION_CALLBACK.

  • type: specifica l'algoritmo di cifratura incorporato da decifrare o cifrare. user_defined_function e type si escludono a vicenda.

    type accetta i valori nel formato Algoritmi di cifratura a blocchi + Modificatori di concatenamento di cifratura a blocchi + Modificatori di riempimento di cifratura a blocchi.

    Gli algoritmi di cifratura dei blocchi supportati sono:

    • DBMS_CRYPTO.ENCRYPT_AES256

    I modificatori di concatenamento di cifratura a blocchi supportati sono:

    • DBMS_CRYPTO.CHAIN_CBC

    • DBMS_CRYPTO.CHAIN_CFB

    • DBMS_CRYPTO.CHAIN_ECB

    • DBMS_CRYPTO.CHAIN_OFB

    I modificatori di riempimento della cifratura dei blocchi supportati sono:

    • DBMS_CRYPTO.PAD_PKCS5

    • DBMS_CRYPTO.PAD_NONE

    • DBMS_CRYPTO.PAD_ZERO

    • DBMS_CRYPTO.PAD_ORCL

  • credential_name: specifica la credenziale utilizzata per memorizzare la chiave di cifratura.

Se non si specificano valori per questi parametri, i valori dei modificatori di concatenamento di cifratura a blocchi e dei modificatori di riempimento di cifratura a blocchi vengono impostati automaticamente su DBMS_CRYPTO.CHAIN_CBC e DBMS_CRYPTO.PAD_PKCS5.

L'opzione di formato encryption viene utilizzata con le procedure DBMS_CLOUD riportate di seguito.
  • Utilizzato per passare i parametri da decifrare per le seguenti procedure:

    • DBMS_CLOUD.COPY_DATA

    • DBMS_CLOUD.CREATE_EXTERNAL_TABLE

    • DBMS_CLOUD.CREATE_HYBRID_TABLE

    • DBMS_CLOUD.COPY_COLLECTION

  • Utilizzato per passare i parametri per la cifratura di questa procedura:

    • DBMS_CLOUD.EXPORT_DATA

Ad esempio:

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

Dove valore è una stringa JSON che fornisce parametri aggiuntivi per la cifratura:

type: valore

Specifica il tipo di cifratura.

credential_name: value

Specifica la credenziale utilizzata per memorizzare la chiave di cifratura.

user_defined_function: value

Specifica una funzione completamente qualificata definita dall'utente per decifrare o cifrare il BLOB (binary large object) specificato.

header

Scrive i nomi delle colonne come prima riga nei file di output di tipo csv.

L'opzione header può accettare un valore boolean o string.

I valori validi sono:
  • false: ignora la riga dell'intestazione.

  • true: include la riga di intestazione. I nomi delle colonne si basano sull'istruzione SELECT nel parametro query. È necessario specificare gli alias di colonna nell'istruzione SELECT quando si utilizzano colonne o espressioni virtuali.

  • String to define custom header names: consente di definire le righe di intestazione con nomi personalizzati. Il numero di colonne e delimitatori nel valore stringa deve corrispondere al numero di colonne e delimitatori nell'istruzione SELECT. Il delimitatore predefinito è una virgola (,).

Ad esempio:

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

Questa opzione è valida solo con csv type.

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

Valore predefinito: false

fileextension

Estensione file personalizzata per sostituire la scelta predefinita per il tipo di formato. Ciò si applica ai formati di testo con DBMS_CLOUD.EXPORT_DATA: CSV, JSON, Parquet o XML.

Se la stringa specificata non inizia con il punto (punto), viene inserito automaticamente un punto prima dell'estensione del file nel nome del file finale.

Se non si desidera alcuna estensione di file, utilizzare il valore: fileextension ='none'

Valori validi: qualsiasi estensione di file.

Valore predefinito: dipende dall'opzione format type:
  • Formato CSV: .csv
  • Formato JSON: .json
  • Formato PARQUET: .parquet
  • Formato XML: .xml

maxfilesize

Numero in byte per la dimensione massima dell'output generato.

Ciò si applica ai formati basati su testo per l'esportazione di dati con DBMS_CLOUD.EXPORT_DATA quando l'opzione format type è impostata su,csv, json o xml.

Nota: questa opzione non è valida se l'opzione format type è parquet.

Valore minimo: 10485760 (10 MB)

Valore massimo: 1 GB

Valore predefinito: 10485760 (10 MB)

quote

In formato CSV, i campi possono essere racchiusi tra due delimitatori. Specificare i delimitatori con quote e endquote. Se endquote non viene specificato, il carattere quote verrà utilizzato per impostazione predefinita come carattere endquote.

Nota

Questa opzione è valida solo con csv type.

quote: carattere

Valore predefinito: il significato nullo non racchiude i campi tra virgolette.

trimspaces

Specifica le modalità per troncare gli spazi iniziali e finali degli spazi iniziali e dei campi in formato CSV. Se viene specificato il parametro quote, prima di citare il campo vengono applicati spazi.

Vedere la descrizione del processo trim_spec.

Nota

Questa opzione è valida solo con csv type.

trimspaces: rtrim| ltrim| notrim| lrtrim| ldrtrim

Valore predefinito: notrim

type

Specifica il tipo di file di output.

csv: specifica il formato CSV (Character Separated Values) che consente di esportare i risultati delle query come set di valori di colonna separati da qualsiasi carattere personalizzato.

json: specifica di esportare i risultati della query come file JSON.

parquet: specifica di esportare i risultati della query come file Parquet.

xml: specifica di esportare i risultati della query come righe di documenti XML validi. Ogni riga è incapsulata in un tag XML radice di <RECORD> </RECORD>.

Il risultato della query viene trasformato automaticamente in formato XML utilizzando la funzione SQL XMLFOREST. Utilizzare gli alias di colonna per personalizzare i nomi delle tag XML per le colonne.

Quando format type è datapump, è possibile specificare i parametri di accesso di Oracle Data Pump supportati:

  • compression: i valori validi sono: BASIC, LOW, MEDIUM e HIGH.

  • version: i valori validi sono COMPATIBLE, LATEST e un version_number specificato.

Per ulteriori informazioni, vedere access_parameters Clausola.

type: csv|datapump|json|parquet|xml