DBMS_CLOUD Opzioni formato package 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 è uno dei seguenti: csv, json, parquet o xml. Vengono visualizzate anche 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 un ",".

Ad esempio:

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

In questa tabella vengono descritte le opzioni di formato per DBMS_CLOUD.EXPORT_DATA quando l'opzione type del parametro format è una delle seguenti: CSV, JSON, Parquet o XML. Per le altre procedure e altri tipi di output, vedere DBMS_CLOUD Opzioni formato pacchetto 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.

Se 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 valore version_number specificato.

Se il valore 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 delimitatore non può essere un codice ASCII o un carattere di escape.

Nota

Questa opzione è valida solo per 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, per impostazione predefinita verrà utilizzato il carattere quote come carattere endquote.

Ad esempio:

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

Questa opzione è valida solo per csv type.

endquote:carattere

Valore predefinito: Nullo, ovvero nessun valore endquote.

escape

Specifica l'occorrenza del carattere virgolette nel valore del campo utilizzando il carattere "\".

Nota

Questa opzione è valida solo per csv type.

escape : true

Valore predefinito: false

encryption

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

Usare encryption per specificare i seguenti parametri da cifrare e decifrare:

  • user_defined_function: specifica una funzione completamente qualificata definita dall'utente per decifrare o cifrare il BLOB specificato (oggetto binario di grandi dimensioni). Restituisce un BLOB decifrato o cifrato. Questo parametro è ad esclusione reciproca 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 a blocchi supportati sono:

    • DBMS_CRYPTO.ENCRYPT_AES256

    I modificatori di concatenamento cifrato 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 cifra a 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 di Modificatori di concatenamento cifrato a blocchi e Modificatori di riempimento cifrato a blocchi vengono impostati automaticamente su DBMS_CRYPTO.CHAIN_CBC e DBMS_CRYPTO.PAD_PKCS5.

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

    • DBMS_CLOUD.COPY_DATA

    • DBMS_CLOUD.CREATE_EXTERNAL_TABLE

    • DBMS_CLOUD.CREATE_HYBRID_TABLE

    • DBMS_CLOUD.COPY_COLLECTION

  • Utilizzato per passare i parametri da cifrare per la procedura riportata di seguito.

    • 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 specificato (oggetto binario di grandi dimensioni).

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: salta la riga di 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 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 è la virgola (,).

Ad esempio:

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

Questa opzione è valida solo per 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. Questo vale per i formati di testo con DBMS_CLOUD.EXPORT_DATA: CSV, JSON, Parquet o XML.

Se la stringa specificata non inizia con punto (punto), viene inserito automaticamente un punto prima dell'estensione del file nel nome 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 dei 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, per impostazione predefinita verrà utilizzato il carattere quote come carattere endquote.

Nota

Questa opzione è valida solo per csv type.

quote: carattere

Valore predefinito: Null significa che non racchiudere i campi tra virgolette.

trimspaces

Specifica le modalità di troncamento degli spazi iniziali e finali dei campi per il formato CSV. Gli spazi di troncamento vengono applicati prima di citare il campo, se viene specificato il parametro quote.

Vedere la descrizione di trim_spec.

Nota

Questa opzione è valida solo per csv type.

trimspaces: rtrim| ltrim| notrim| lrtrim| ldrtrim

Valore predefinito: notrim

type

Specifica il tipo di file di output.

csv: specifica il formato CSV (Caracter 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 delle 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 dei 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 valore version_number specificato.

Per ulteriori informazioni, vedere Clausola access_parameters.

type: csv|datapump|json|parquet|xml