Criar Credenciais e Copiar Dados para uma Tabela Existente
Para carregar dados de arquivos na Nuvem, primeiro armazene suas credenciais de armazenamento de objetos no Autonomous AI Database e, em seguida, use o procedimento DBMS_CLOUD.COPY_DATA
para carregar dados.
O arquivo de origem neste exemplo, channels.txt
, tem os seguintes dados:
S,Direct Sales,Direct T,Tele Sales,Direct C,Catalog,Indirect I,Internet,Indirect P,Partners,Others
- Armazene suas credenciais do armazenamento de objetos usando o procedimento
DBMS_CLOUD.CREATE_CREDENTIAL
. Por exemplo:SET DEFINE OFF BEGIN
DBMS_CLOUD.CREATE_CREDENTIAL
( credential_name => 'DEF_CRED_NAME', username => 'adb_user@example.com', password => 'password' ); END; /Esta operação armazena as credenciais no banco de dados em um formato criptografado. Você pode usar qualquer nome para o nome da credencial. Observe que essa etapa só é necessária uma vez, a menos que suas credenciais do armazenamento de objetos sejam alteradas. Depois de armazenar as credenciais, você poderá usar o mesmo nome de credencial para todos os carregamentos de dados.
Para obter informações detalhadas sobre os parâmetros, consulte ProcedimentoCREATE_CREDENTIAL.
Não será necessário criar uma credencial para acessar o Oracle Cloud Infrastructure Object Store se você ativar as credenciais do controlador de recursos. Consulte Usar o Controlador de Recursos para Acessar Recursos da Oracle Cloud Infrastructure para obter mais informações.
Observação
Algumas ferramentas, como o SQL*Plus e o SQL Developer, usam o caractere E comercial (&
) como um caractere especial. Se você tiver o caractere E comercial em sua senha, use o comandoSET DEFINE OFF
nessas ferramentas, conforme mostrado no exemplo, para desativar o caractere especial e obter a credencial criada corretamente. - Carregue dados em uma tabela existente usando o procedimento
DBMS_CLOUD.COPY_DATA
. Por exemplo: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; /Os parâmetros são:
-
table_name
: é o nome da tabela de destino. -
credential_name
: é o nome da credencial criada na etapa anterior. O parâmetrocredential_name
deve estar de acordo com as convenções de nomeação de objetos da Oracle. Consulte Regras de Nomeação de Objeto de Banco de Dados para obter mais informações. -
file_uri_list
: é uma lista delimitada por vírgulas dos arquivos de origem que você deseja carregar. -
format
: define as opções que você pode especificar para descrever o formato do arquivo-fonte, incluindo se o arquivo é do tipo texto, ORC, Parquet ou Avro.Se os dados em seus arquivos de origem forem criptografados, decriptografe os dados especificando o parâmetro
format
com a opçãoencryption
. Consulte Descriptografar Dados Durante a Importação do Serviço Object Storage para obter mais informações sobre como decriptografar dados.
Neste exemplo,
namespace-string
é o namespace do Oracle Cloud Infrastructure Object Storage ebucketname
é o nome do bucket. Consulte Noções Básicas de Namespaces do serviço Object Storage para obter mais informações.Observação
O Autonomous AI Database suporta uma variedade de formatos de arquivo de origem, incluindo formatos de dados compactados. Consulte DBMS_CLOUD Package Format Options e a opção de formatoDBMS_CLOUD
compression
para ver os tipos de compactação suportados.Para obter informações detalhadas sobre os parâmetros, consulte COPY_DATA Procedure e COPY_DATA Procedure for Avro, ORC, or Parquet Files.
-
Tópico principal: Carregar Dados de Arquivos na Nuvem