DBMS_CLOUD Opzioni formato package

L'argomento del formato in DBMS_CLOUD specifica il formato dei file di origine.

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 'CSV')

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

Ad esempio:

format => json_object('ignoremissingcolumns' value 'true', 'removequotes' value 'true', 
                           'dateformat' value 'YYYY-MM-DD-HH24-MI-SS', 'blankasnull' value 'true', 'logretention' value 7)
Nota

Per le opzioni di formato Avro, ORC o Parquet, vedere DBMS_CLOUD Opzioni di formato package per Avro, ORC o Parquet.

Come indicato nella colonna Opzione formato, un set limitato di opzioni di formato è valido con DBMS_CLOUD.COPY_COLLECTION o con DBMS_CLOUD.COPY_DATA quando format type è JSON.

Opzione di formato descrizione; Sintassi

access_protocol

Specifica il tipo di tabella Apache Iceberg, ad esempio AWS o OCI Object Storage, e quali informazioni vengono utilizzate per creare la tabella esterna, ad esempio informazioni da un Data Catalog o da un URI di metadati diretto.

Per ulteriori informazioni sulla sintassi access_protocol, vedere Procedura CREATE_EXTERNAL_TABLE per Apache Iceberg.

blankasnull

Quando è impostato su true, carica i campi costituiti da spazi come nulli.

blankasnull : true

Valore predefinito: False

characterset

Valido con format JSON e COPY_DATA

Specifica il set di caratteri dei file di origine

characterset: stringa

Valore predefinito: set di caratteri del database

columnpath

Utilizzare solo con format JSON e COPY_DATA

Array di espressioni di percorso JSON corrispondenti ai campi che devono essere estratti dai record JSON. Ogni espressione di percorso JSON nell'array deve seguire le regole descritte in Espressioni di percorso SQL/JSON.

Utilizzare solo con i formati JSON e DBMS_CLOUD.COPY_DATA.

Array JSON delle espressioni di percorso json espresse in formato stringa. Ad esempio: valore 'columnpath' '["$.WEATHER_STATION_ID", "$.WEATHER_STATION_NAME"]'

compression

Opzione valida con dati JSON

Specifica il tipo di compressione del file di origine.

Formato di archiviazione ZIP non supportato.

Specifica del valore auto per i tipi di compressione: gzip, zlib, zstd, bzip2.

compression: auto|gzip|zlib|zstd|bzip2

Valore predefinito: valore nullo senza compressione.

conversionerrors

Se una riga viene rifiutata a causa di errori di conversione del tipo di dati, le colonne correlate vengono memorizzate come nulle o la riga viene rifiutata.

conversionerrors : reject_record | store_null

Valore predefinito: reject_record

dateformat

Specifica il formato della data nel file di origine. L'opzione di formato AUTO cerca i seguenti formati:

J 
MM-DD-YYYYBC 
MM-DD-YYYY 
YYYYMMDD HHMISS 
YYMMDD HHMISS 
YYYY.DDD 
YYYY-MM-DD

dateformat: stringa

Valore predefinito: formato data database

delimiter

Specifica il delimitatore di campo.

Per utilizzare un carattere speciale come delimitatore, specificare il valore HEX del codice ASCII del carattere. Ad esempio, quanto segue specifica il carattere TAB come delimitatore:

format => json_object('delimiter' value 'X''9''')

delimiter: carattere

Valore predefinito | (carattere pipe)

detectfieldorder

Specifica che i campi nei file di dati esterni sono in un ordine diverso rispetto alle colonne nella tabella. Rileva l'ordine dei campi utilizzando la prima riga di ogni file di dati esterno e mappalo alle colonne della tabella. I nomi dei campi nei file di dati esterni vengono confrontati senza distinzione tra maiuscole e minuscole con i nomi delle colonne della tabella.

Questa opzione di formato è applicabile per le seguenti procedure:

  • DBMS_CLOUD.COPY_DATA

  • DBMS_CLOUD.CREATE_EXTERNAL_TABLE

  • DBMS_CLOUD.CREATE_EXTERNAL_PART_TABLE

  • DBMS_CLOUD.CREATE_HYBRID_PART_TABLE

Limitazioni per detectfieldorder:

  • I nomi dei campi nel file di dati devono essere visualizzati nella prima riga del record e non devono contenere spazi vuoti tra i nomi dei campi.

  • Il delimitatore di campo nel record dei nomi di campo deve essere uguale al delimitatore di campo per i dati nel file.

  • I nomi dei campi citati non sono supportati. I nomi dei campi nei file di dati vengono confrontati, senza distinzione tra maiuscole e minuscole, con i nomi delle colonne delle tabelle esterne.

  • I delimitatori di campo incorporati non sono consentiti nei nomi dei campi.

  • Il numero di colonne nella tabella deve corrispondere al numero di campi nei file di dati.

  • Questa opzione di formato non è applicabile per i formati Bigdata o Oracle Data Pump, in quanto tali formati dispongono di informazioni precise sui metadati delle colonne nel formato file binario.

    I formati di testo, CSV, JSON, Parquet o XML possono trarre vantaggio da questo rilevamento automatico dell'ordine dei campi quando la prima riga contiene i nomi dei campi.

Per ulteriori informazioni, vedere FIELD NAMES e la descrizione di ALL FILES.

detectfieldorder: true

Valore predefinito: false

enablelogs

L'opzione di formato enablelogs viene utilizzata con le seguenti procedure DBMS_CLOUD:

  • COPY_DATA

  • COPY_COLLECTION

  • EXPORT_DATA

enablelogs specifica un valore booleano, quando è impostato su TRUE vengono generati i log. Se impostato su FALSE, i log non vengono generati.

Ad esempio:

format => JSON_OBJECT('enablelogs' value FALSE)

enablelogs: false

Valore predefinito: true

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. user_defined_function si esclude a vicenda con altri parametri per encryption.

    Ad esempio, ADMIN.DECRYPTION_CALLBACK.

  • type: specifica l'algoritmo di cifratura DBMS_CRYPTO da decifrare o cifrare.

    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_EXTERNAL_PART_TABLE

    • DBMS_CLOUD.CREATE_HYBRID_PART_TABLE

      Per DBMS_CLOUD.CREATE_HYBRID_PART_TABLE questa opzione è applicabile solo ai file di storage degli oggetti.

    • 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).

endquote

I dati possono essere racchiusi tra due delimitatori, specificati con quote e endquote. I caratteri quote e endquote vengono rimossi durante il caricamento quando specificato.

Ad esempio:

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

endquote:character

Valore predefinito: Nullo, ovvero nessun valore endquote.

escape

Il carattere "\" viene utilizzato come carattere di escape quando specificato.

escape : true

Valore predefinito: false

ignoreblanklines

Opzione valida con dati JSON

Quando l'impostazione è true, le righe vuote vengono ignorate.

ignoreblanklines : true

Valore predefinito: False

ignoremissingcolumns

Se field_list contiene più colonne rispetto ai file origine, le colonne aggiuntive vengono memorizzate come nulle.

ignoremissingcolumns : true

Valore predefinito False

implicit_partition_columns

Abilitare il partizionamento implicito e specificare i nomi delle colonne della partizione utilizzando l'opzione di formato implicit_partition_columns con DBMS_CLOUD.CREATE_EXTERNAL_TABLE.

Il partizionamento implicito è abilitato nei modi riportati di seguito.

  • Utilizzare implicit_partition_columns per fornire una lista di colonne di partizione e specificare implicit_partition_type. Ad esempio:
    format => '{"implicit_partition_type":"hive",
          "implicit_partition_columns":["country","year","month"]}'
  • Utilizzare implicit_partition_columns per fornire un elenco di colonne di partizione senza specificare il tipo di partizione. Il tipo di partizione viene rilevato automaticamente come hive o non-hive. Ad esempio:
    format => '{"implicit_partition_columns":["country","year","month"]}'
  • Utilizzare implicit_partition_type per fornire il tipo di colonne di partizione senza fornire una lista di colonne di partizione. La ricerca automatica delle chiavi di partizione nei dati partizionati in stile HIVE viene attivata per determinare i nomi delle colonne. Ad esempio:
    format => '{"partition_type":"hive"}'

Per la descrizione e la sintassi dell'opzione, vedere implicit_partition_type.

implicit_partition_columns : array di stringhe

Valore predefinito: se si specifica implicit_partition_type, i nomi delle colonne vengono derivati mediante la ricerca automatica delle chiavi di partizione nei dati partizionati in stile HIVE. In caso contrario, il valore predefinito è nullo e il partizionamento implicito non è abilitato.

implicit_partition_type

Abilitare il partizionamento implicito e specificare i tipi di dati delle colonne di partizione utilizzando l'opzione di formato implicit_partition_type con DBMS_CLOUD.CREATE_EXTERNAL_TABLE.

Per ulteriori informazioni sull'abilitazione del partizionamento implicito e su alcuni esempi, vedere implicit_partition_columns.

implicit_partition_type : alveare

Valore predefinito: se si specifica implicit_partition_columns, il tipo viene rilevato automaticamente come alveare o non alveare. In caso contrario, il valore predefinito è nullo e il partizionamento implicito non è abilitato.

jsonpath

Utilizzare solo con COPY_COLLECTION

Percorso JSON per identificare il documento da caricare.

Questa opzione è valida solo per i dati di raccolta JSON con DBMS_CLOUD.COPY_COLLECTION.

jsonpath: stringa

Valore predefinito: Nullo

keyassignment

Utilizzare solo con COPY_COLLECTION

Specifica se una nuova raccolta viene creata come raccolta mongo-compatibile o come raccolta SODA.

Quando il valore è impostato su embedded_oid, viene creata una nuova raccolta come raccolta mongo-compatibile.

Per impostazione predefinita, questo parametro non è impostato, ovvero viene creata una nuova raccolta come raccolta SODA.

keyassignment: embedded_oid

Impostazione predefinita: keyassignment non impostato

keypath

Utilizzare solo con COPY_COLLECTION

Specifica un attributo nei dati da caricare come valore '_id'.

Se si specifica keypath, è necessario specificare anche il valore keyassignment come embedded_oid.

Impostare il valore su un percorso, ad esempio '$.mykey', per selezionare il valore del percorso come valore '_id'.

Questo parametro è facoltativo ed è valido solo per il caricamento in raccolte compatibili con mongo.

Se non specificato, Oracle genera un ID di sistema univoco a 12 byte e lo inserisce come attributo '_id' se un attributo '_id' non è già presente nei dati da caricare.

keypath: string

Impostazione predefinita: keypath non è impostato.

Quando keypath è impostato, il valore predefinito di string è NULL.

language

Specifica il nome di una lingua, ad esempio FRENCH, da cui è possibile ottenere informazioni basate sulle impostazioni nazionali.

language: stringa

Valore predefinito: Nullo

Per un elenco delle lingue supportate da Oracle, vedere Locale Data nel manuale Oracle Database Globalization Support Guide.

logdir

Specifica un valore di stringa che determina il nome dell'oggetto directory in cui vengono salvati i file logfile_table o badfile_table.

Per impostazione predefinita, il valore logdir non fa distinzione tra maiuscole e minuscole, ma viene riservato se il valore specificato è racchiuso tra virgolette doppie.

Ad esempio:

format => JSON_OBJECT ('logdir' value 'test_log')

L'opzione di formato logdir specificata nell'esempio precedente salva i file logfile_table o badfile_table nell'oggetto directory TEST_LOG.

format => JSON_OBJECT ('logdir' value '"test_log"')

L'opzione di formato logdir specificata nell'esempio precedente salva i file logfile_table o badfile_table nell'oggetto directory test_log.

logdir: stringa

Valore predefinito: DATA_PUMP_DIR

logprefix

Specifica un valore di stringa che determina il prefisso per i file logfile_table e badfile_table.

Il formato del nome della tabella di log è: logprefix$operation_id

Per impostazione predefinita, il prefisso di log è in lettere maiuscole, ma il caso è riservato quando il valore specificato è racchiuso tra virgolette doppie.

Ad esempio:

format => JSON_OBJECT ('logprefix' value 'TEST')

I file di log utilizzano quindi il prefisso TEST, ad esempio TEST$2_LOG e TEST$2_BAD.

logprefix: stringa

Valore predefinito: COPY

logretention

Specifica una durata intera positiva, in giorni, per la quale vengono conservati i file logfile_table e badfile_table.

Valori validi: da 0 a 99999

Ad esempio:

format => JSON_OBJECT ('logretention' value 7)

logretention: numero

Valore predefinito: 2

maxdocsize

Questa opzione è valida solo con dati JSON

Dimensione massima dei documenti JSON.

maxdocsize: numero

Valore predefinito: 1 Megabyte

Valore massimo consentito: 2 GB

numericcharacters

Specifica i caratteri da utilizzare come separatore di gruppo e decimale.

decimal_character: il separatore decimale consente di separare la parte intera di un numero dalla parte decimale.

group_separator: il separatore di gruppo separa i gruppi di numeri interi (ossia migliaia, milioni, miliardi e così via).

numericcharacters: 'decimal_character group_separator'

Valore predefinito: ".,"

Per ulteriori informazioni, vedere NLS_NUMERIC_CHARACTERS in Oracle Database globalizzazione Support Guide.

numberformat

Specifica il modello del formato numerico. I modelli di formato numerico fanno sì che il numero venga arrotondato al numero specificato di cifre significative. Un modello di formato numerico è composto da uno o più elementi di formato numerico.

Viene utilizzato in combinazione con numericcharacters.

numberformat: number_format_model

Valore predefinito: viene derivato dall'impostazione del parametro NLS_TERRITORY

Per ulteriori informazioni, vedere Modelli di formato numerico in Riferimento al linguaggio SQL.

partition_columns

L'opzione di formato partition_columns viene utilizzata con DBMS_CLOUD.CREATE_EXTERNAL_PART_TABLE per specificare i nomi di colonna e i tipi di dati delle colonne di partizione quando le colonne di partizione vengono derivate dal percorso del file, a seconda del tipo di file di dati, strutturato o non strutturato:

  • Quando il parametro DBMS_CLOUD.CREATE_EXTERNAL_PART_TABLE include il parametro column_list e il file di dati non è strutturato, ad esempio con file di testo CSV, partition_columns non include il tipo di dati. Ad esempio, utilizzare un formato come il seguente per questo tipo di specifica partition_columns:

    '"partition_columns":["state","zipcode"]'

    Il tipo di dati non è obbligatorio perché è specificato nel parametro DBMS_CLOUD.CREATE_EXTERNAL_PART_TABLE column_list.

  • Se il parametro DBMS_CLOUD.CREATE_EXTERNAL_PART_TABLE non include il parametro column_list e i file di dati sono strutturati, ad esempio i file Avro, ORC o Parquet, l'opzione partition_columns include il tipo di dati. Ad esempio, la seguente mostra una specifica partition_columns:

    '"partition_columns":[
                   {"name":"country", "type":"varchar2(10)"},
                   {"name":"year", "type":"number"},
                   {"name":"month", "type":"varchar2(10)"}]'

Se i file di dati non sono strutturati e la sottoclausola type è specificata con partition_columns, la sottoclausola type viene ignorata.

Per i nomi oggetto non basati sul formato hive, l'ordine delle colonne specificate in partition_columns deve corrispondere all'ordine visualizzato nel nome dell'oggetto in file_uri_list.

 

quote

Specifica le virgolette per i campi, i caratteri quote vengono rimossi durante il caricamento quando specificato.

quote: carattere

Valore predefinito: nullo per indicare che non è presente alcuna virgoletta

recorddelimiter

Opzione valida con dati JSON

Specifica il delimitatore di record.

Per impostazione predefinita, DBMS_CLOUD tenta di trovare automaticamente il carattere di nuova riga corretto come delimitatore. Per prima cosa cerca nel file il carattere di nuova riga di Windows "\r\n". Se trova il carattere di nuova riga di Windows, viene utilizzato come delimitatore di record per tutti i file della procedura. Se un carattere di nuova riga di Windows non viene trovato, cerca il carattere di nuova riga UNIX/Linux "\n" e, se ne trova uno, utilizza "\n" come delimitatore di record per tutti i file nella procedura.

Specificare questo argomento in modo esplicito se si desidera eseguire l'override del funzionamento predefinito, ad esempio:

format => json_object('recorddelimiter' VALUE '''\r\n''')

Per indicare che non esiste un delimitatore di record, è possibile specificare un valore recorddelimiter che non si verifica nel file di input. Ad esempio, per indicare che non esiste alcun delimitatore, specificare il carattere di controllo 0x01 (SOH) come valore per recorddelimiter e impostare il valore recorddelimiter su "0x''01''" (questo carattere non si trova nel testo JSON). Ad esempio:

format => '{"recorddelimiter" : "0x''01''"}'

Il valore recorddelimiter viene impostato una volta per chiamata di procedura. Se si utilizza il valore predefinito, detected newline, tutti i file utilizzano lo stesso delimitatore di record, se ne viene rilevato uno.

recorddelimiter: carattere

Valore predefinito: newline rilevato

regexuri

L'opzione di formato regexuri viene utilizzata con le seguenti procedure DBMS_CLOUD:

  • COPY_COLLECTION

  • COPY_DATA

  • CREATE_EXTERNAL_TABLE

  • CREATE_EXTERNAL_PART_TABLE

  • CREATE_HYBRID_PART_TABLE

Quando il valore di regexuri è impostato su TRUE, è possibile utilizzare i caratteri jolly e le espressioni regolari nei nomi file negli URI dei file di origine cloud.

I caratteri "*" e "?" vengono considerati caratteri jolly quando il parametro regexuri è impostato su FALSE. Quando il parametro regexuri è impostato su TRUE, i caratteri "*" e "?" fanno parte del pattern di espressioni regolari specificato.

I pattern di espressioni regolari sono supportati solo per il nome file o il percorso della sottocartella negli URI e la corrispondenza del pattern è identica a quella eseguita dalla funzione REGEXP_LIKE. I pattern di espressione regolare non sono supportati per i nomi di directory.

Per le tabelle esterne, questa opzione è supportata solo con le tabelle create su un file nello storage degli oggetti.

Ad esempio:

format => JSON_OBJECT('regexuri' value TRUE)

Per ulteriori informazioni sulla condizione REGEXP_LIKE, vedere REGEXP_LIKE Condizione.

regexuri: True

Valore predefinito: False

rejectlimit

L'operazione restituirà un errore dopo il rifiuto del numero di righe specificato.

rejectlimit: numero

Valore predefinito: 0

removequotes

Rimuove tutte le virgolette che racchiudono qualsiasi campo nel file di origine.

removequotes: true

Valore predefinito: False

skipheaders

Specifica quante righe devono essere saltate dall'inizio del file.

skipheaders: numero

Valore predefinito: 0 se non specificato, 1 se specificato senza un valore

territory

Specifica un nome area per determinare ulteriormente le caratteristiche dei dati di input.

territory: stringa

Valore predefinito: Nullo

Per un elenco dei territori supportati da Oracle, vedere Locale Data in Oracle Database Globalization Support Guide.

timestampformat

Specifica il formato dell'indicatore orario nel file di origine. L'opzione di formato AUTO cerca i seguenti formati:

YYYY-MM-DD HH:MI:SS.FF 
YYYY-MM-DD HH:MI:SS.FF3
YYYY-MM-DD HH24:MI:SS.FF3
MM/DD/YYYY HH:MI:SS.FF3

timestampformat: stringa

Valore predefinito: formato indicatore orario del database

La stringa può contenere caratteri jolly come "$".

timestampltzformat

Specifica l'indicatore orario con il formato del fuso orario locale nel file di origine. L'opzione di formato AUTO cerca i seguenti formati:

DD Mon YYYY HH:MI:SS.FF TZR 
MM/DD/YYYY HH:MI:SS.FF TZR 
YYYY-MM-DD HH:MI:SS+/-TZR 
YYYY-MM-DD HH:MI:SS.FF3 
DD.MM.YYYY HH:MI:SS TZR

timestampltzformat: stringa

Valore predefinito: indicatore orario del database con formato del fuso orario locale

timestamptzformat

Specifica l'indicatore orario con il formato del fuso orario nel file di origine. L'opzione di formato AUTO cerca i seguenti formati:

DD Mon YYYY HH:MI:SS.FF TZR 
MM/DD/YYYY HH:MI:SS.FF TZR 
YYYY-MM-DD HH:MI:SS+/-TZR 
YYYY-MM-DD HH:MI:SS.FF3 
DD.MM.YYYY HH:MI:SS TZR

timestamptzformat: stringa

Valore predefinito: indicatore orario del database con formato del fuso orario

trimspaces

Specifica le modalità di troncamento degli spazi iniziali e finali dei campi.

Vedere la descrizione di trim_spec.

trimspaces: rtrim| ltrim| notrim| lrtrim| ldrtrim

Valore predefinito: notrim

truncatecol

Se i dati nel file sono troppi lunghi per un campo, questa opzione troncherà il valore del campo invece di rifiutare la riga.

truncatecol:true

Valore predefinito: False

type

Specifica il tipo di file di origine.

Vedere la descrizione di CSV nella clausola field_definitions

Se il valore type è datapump, l'unica altra opzione di formato valida è rejectlimit.

Se type è datapump, le uniche aree di memorizzazione degli oggetti supportate sono Oracle Cloud Infrastructure Object Storage e Oracle Cloud Infrastructure Object Storage Classic.

Per i valori type avro, orc o parquet, vedere DBMS_CLOUD Opzioni formato package per Avro, ORC o Parquet.

Per i dati JSON con DBMS_CLOUD.COPY_COLLECTION type sono disponibili due valori validi: json (predefinito) e ejson. Per DBMS_CLOUD.COPY_COLLECTION questi valori specificano entrambi che l'input è dati JSON. Il valore ejson fa sì che gli oggetti estesi nei dati di input JSON testuali vengano tradotti in valori JSON scalari nella raccolta JSON binaria nativa. Il valore json non esegue questa trasformazione e tutti gli oggetti nei dati di input vengono convertiti in formato JSON binario.

Per i dati JSON con DBMS_CLOUD.COPY_DATA type è disponibile un valore valido: json. Questo valore specifica che l'input è dati JSON.

type: csv|csv with embedded|csv without embedded |avro||datapump|orc|parquet

Nota

Non tutte le procedure DBMS_CLOUD supportano tutti questi tipi.

csv è uguale a csv without embedded.

Valore predefinito: Nullo

Per i dati JSON sono disponibili due valori type validi da utilizzare con DBMS_CLOUD.COPY_COLLECTION: json|ejson In questo caso il valore predefinito è json. Per i dati JSON con DBMS_CLOUD.COPY_DATA, è valido solo json.

unpackarrays

Utilizzare solo con COPY_COLLECTION

Se impostato su true, se un documento caricato è un array, il contenuto dell'array viene caricato come documenti anziché come array stesso. Questo vale solo per l'array di livello superiore.

Se impostato su true, l'intero array viene inserito come singolo documento.

Questa opzione è valida solo per i dati di raccolta JSON con DBMS_CLOUD.COPY_COLLECTION.

unpackarrays: true

Valore predefinito: False