Crea credenziali e copia dati in una tabella esistente

Per il caricamento dei dati dai file nel cloud, è necessario innanzitutto memorizzare le credenziali di storage degli oggetti in Autonomous Database, quindi utilizzare la procedura DBMS_CLOUD.COPY_DATA per caricare i dati.

Il file di origine in questo esempio, channels.txt, contiene i dati seguenti:

S,Direct Sales,Direct
T,Tele Sales,Direct
C,Catalog,Indirect
I,Internet,Indirect
P,Partners,Others
  1. Memorizzare le credenziali dell'area di memorizzazione degli oggetti utilizzando la procedura DBMS_CLOUD.CREATE_CREDENTIAL. Ad esempio:
    SET DEFINE OFF
    BEGIN
      DBMS_CLOUD.CREATE_CREDENTIAL(
        credential_name => 'DEF_CRED_NAME',
        username => 'adb_user@example.com',
        password => 'password'
      );
    END;
    /

    Questa operazione memorizza le credenziali nel database in un formato cifrato. È possibile utilizzare qualsiasi nome per il nome della credenziale. Tenere presente che questo passo è obbligatorio una sola volta a meno che le credenziali dell'area di memorizzazione degli oggetti non vengano modificate. Una volta memorizzate le credenziali, è possibile utilizzare lo stesso nome credenziale per tutti i caricamenti dati.

    Per informazioni dettagliate sui parametri, vedere CREATE_CREDENTIAL Procedure.

    La creazione di una credenziale per accedere all'area di memorizzazione degli oggetti di Oracle Cloud Infrastructure non è necessaria se si abilitano le credenziali del principal risorsa. Per ulteriori informazioni, consulta la sezione Usa principal risorsa per accedere alle risorse di Oracle Cloud Infrastructure.

    Nota

    Alcuni strumenti come SQL*Plus e SQL Developer utilizzano il carattere e commerciale (&) come carattere speciale. Se si dispone del carattere e commerciale nella password, utilizzare il comando SET DEFINE OFF in tali strumenti come mostrato nell'esempio per disabilitare il carattere speciale e ottenere la credenziale creata correttamente.
  2. Caricare i dati in una tabella esistente utilizzando la procedura DBMS_CLOUD.COPY_DATA. Ad esempio:
    CREATE TABLE CHANNELS
       (channel_id CHAR(1),
        channel_desc VARCHAR2(20),
        channel_class VARCHAR2(20)
       );
    /
    
    BEGIN
     DBMS_CLOUD.COPY_DATA(
        table_name =>'CHANNELS',
        credential_name =>'DEF_CRED_NAME',
        file_uri_list =>'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o/channels.txt',
        format => json_object('delimiter' value ',')
     );
    END;
    /
    

    Di seguito sono riportati i parametri disponibili.

    • table_name: è il nome della tabella di destinazione.

    • credential_name: indica il nome della credenziale creata nel passo precedente. Il parametro credential_name deve essere conforme alle convenzioni di denominazione degli oggetti Oracle. Per ulteriori informazioni, vedere Regole di denominazione degli oggetti database.

    • file_uri_list: è una lista delimitata da virgole dei file di origine che si desidera caricare.

    • format: definisce le opzioni che è possibile specificare per descrivere il formato del file di origine, incluso se il file è di tipo testo, ORC, Parquet o Avro.

      Se i dati nei file di origine vengono cifrati, decifrare i dati specificando il parametro format con l'opzione encryption. Per ulteriori informazioni sulla decifrazione dei dati, vedere Decifrare i dati durante l'importazione dallo storage degli oggetti.

    In questo esempio, namespace-string è lo spazio di nomi dello storage degli oggetti Oracle Cloud Infrastructure e bucketname è il nome del bucket. Per ulteriori informazioni, vedere Informazioni sugli spazi di nomi dello storage degli oggetti.

    Nota

    Autonomous Database supporta una vasta gamma di formati di file di origine, inclusi i formati di dati compressi. Per visualizzare i tipi di compressione supportati, vedere DBMS_CLOUD Package Format Options e l'opzione di formato DBMS_CLOUD compression.

    Per informazioni dettagliate sui parametri, vedere COPY_DATA Procedure e COPY_DATA Procedure per i file Avro, ORC o Parquet.