DBMS_CLOUD Mapping tra Avro, ORC e Parquet di package e nomi di colonne Oracle

Descrive le regole per la conversione dei nomi di colonna Avro, ORC e Parquet in nomi di colonna Oracle.

Sono supportati i nomi di colonna Avro, ORC e Parquet, ma potrebbero essere necessarie virgolette doppie per i riferimenti a Oracle SQL in tabelle esterne. Pertanto, per facilitare l'uso e per evitare di dover utilizzare virgolette doppie quando si fa riferimento ai nomi di colonna, se possibile non utilizzare quanto segue nei nomi di colonna Avro, ORC e Parquet:

  • Spazi vuoti incorporati

  • Numeri principali

  • Primi caratteri di sottolineatura

  • Parole riservate di Oracle SQL

La tabella seguente mostra vari tipi di nomi di colonna Avro, ORC e Parquet e regole per l'utilizzo dei nomi di colonna nei nomi di colonna Oracle nelle tabelle esterne.

Nome Avro, ORC o Parquet CREA nome tabella CATALOGO Oracle Istruzione SQL valida Note
parte, parte o parte parte, parte, parte PARTE

select part

select Part

select paRt

select PART

Nomi di colonne senza virgolette in maiuscolo Oracle implicitamente
N. ordine "N. ordine" N. ordine select "Ord No" Le virgolette doppie sono obbligatorie quando sono presenti spazi vuoti incorporati, che conservano anche il caso del carattere
__index_key__ "__index_key__" __index_key__ select "__index_key__" Le virgolette doppie sono obbligatorie quando è presente un carattere di sottolineatura iniziale, che conserva anche il caso del carattere
6Way "6Way" 6Way select "6Way" Le virgolette sono obbligatorie quando è presente una cifra numerica iniziale, che conserva anche il carattere maiuscolo/minuscolo
creare, creare o creare e così via. (ogni variazione di caso) partizione, partizione, partizione e così via (per una parola riservata Oracle) "CREA" "PARTIZIONE" CREA PARTIZIONE

select "CREATE"

select "PARTITION"

Per le parole riservate di Oracle SQL sono necessarie virgolette doppie. Questi sono forzati a maiuscole, ma devono sempre essere racchiusi tra virgolette doppie quando vengono utilizzati in qualsiasi punto di SQL
ID riga, ID riga, ROWid e così via (per ROWID vedere le note) rowid  

select "rowid"

select "Rowid"

select "ROWid"

select "rowid"

Per ROWID, qualsiasi variazione mista o minuscola di ROWID conserva la custodia e deve essere sempre doppiamente citata e utilizzare le varianti originali della custodia. A causa del conflitto intrinseco con Oracle ROWID per la tabella, se si specifica il valore ROWID maiuscolo, viene automaticamente memorizzato come "ROWID" minuscolo e deve essere sempre racchiuso tra virgolette quando viene fatto riferimento.
Nota

  • In generale, è possibile fare riferimento a un nome di colonna in una tabella esterna senza virgolette doppie.

  • A meno che non sia presente un carattere vuoto incorporato, un carattere di sottolineatura iniziale ("_") o una cifra numerica iniziale ("da 0" a "9") nel nome della colonna, il caso originale del nome della colonna viene conservato e deve sempre essere fatto riferimento con le virgolette doppie e utilizzando il caso originale (maiuscolo, minuscolo o misto) del nome della colonna Avro, ORC o Parquet.

  • Dopo aver utilizzato DBMS_CLOUD.CREATE_EXTERNAL_TABLE per creare una tabella esterna con il formato specificato come avro, orc o parquet, utilizzare il comando DESCRIBE in SQL*Plus per visualizzare i nomi delle colonne della tabella.

  • Quando Oracle SQL Reserved Words viene utilizzato nei nomi di colonna Avro, ORC o Parquet, devono sempre essere racchiusi tra virgolette quando vi viene fatto riferimento in qualsiasi punto di SQL. Per ulteriori informazioni, vedere Oracle SQL Reserved Words.