Lavorare con le tabelle esterne Oracle - Amazon Relational Database Service

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Lavorare con le tabelle esterne Oracle

Le Tabelle esterne Oracle sono tabelle con dati che non si trovano nel database. Invece, i dati si trovano nei file esterni ai quali il database può accedere. Utilizzando le tabelle esterne, puoi accedere ai dati senza caricarli nel database. Per ulteriori informazioni sulle tabelle esterne, consulta Gestione delle tabelle esterne nella documentazione Oracle.

Con AmazonRDS, puoi archiviare file di tabella esterni in oggetti di directory. Puoi creare un oggetto directory oppure puoi utilizzarne uno predefinito nel database Oracle, come la DIR directory DATA _ PUMP _. Per informazioni sulla creazione di oggetti di directory, consulta Creazione ed eliminazione di directory nello spazio di archiviazione dati principale. Puoi eseguire una query sulla DIRECTORIES vista ALL _ per elencare gli oggetti directory per la tua istanza Amazon RDS Oracle DB.

Nota

Gli oggetti della directory puntano allo spazio di archiviazione dati principale (EBSvolume Amazon) utilizzato dall'istanza. Lo spazio usato—insieme a file di dati, log delle modifiche, audit, traccia e altri file— fa parte dello storage allocato.

È possibile spostare un file di dati esterno da un database Oracle a un altro utilizzando il TRANSFER pacchetto DBMSFILE_ _ o il FILE pacchetto UTL_. I file dati esterni si spostano da una directory nel database origine a una directory specificata nel database di destinazione. Per informazioni sull'utilizzo di DBMS _ FILE _TRANSFER, vedereImportazione utilizzando Oracle Data Pump.

Dopo aver spostato il file dei dati esterno puoi crearci una tabella esterna. L'esempio seguente crea una tabella esterna che utilizza il emp_xt_file1.txt file nella DIR1 directory USER _.

CREATE TABLE emp_xt ( emp_id NUMBER, first_name VARCHAR2(50), last_name VARCHAR2(50), user_name VARCHAR2(20) ) ORGANIZATION EXTERNAL ( TYPE ORACLE_LOADER DEFAULT DIRECTORY USER_DIR1 ACCESS PARAMETERS ( RECORDS DELIMITED BY NEWLINE FIELDS TERMINATED BY ',' MISSING FIELD VALUES ARE NULL (emp_id,first_name,last_name,user_name) ) LOCATION ('emp_xt_file1.txt') ) PARALLEL REJECT LIMIT UNLIMITED;

Supponiamo di voler spostare i dati presenti in un'istanza Amazon RDS Oracle DB in un file di dati esterno. In questo caso, puoi popolare il file di dati esterno creando una tabella esterna e selezionando i dati dalla tabella nel database. Ad esempio, la seguente SQL istruzione crea la tabella orders_xt esterna interrogando la orders tabella nel database.

CREATE TABLE orders_xt ORGANIZATION EXTERNAL ( TYPE ORACLE_DATAPUMP DEFAULT DIRECTORY DATA_PUMP_DIR LOCATION ('orders_xt.dmp') ) AS SELECT * FROM orders;

In questo esempio, i dati vengono inseriti nel orders_xt.dmp file della directory DATA _ PUMP _DIR.