Criar Credenciais e Copiar Dados JSON para uma Tabela Existente
Use DBMS_CLOUD.COPY_DATA
para carregar dados JSON na nuvem em uma tabela.
O arquivo de origem neste exemplo é um arquivo de dados JSON.
- 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.
- Carregue dados JSON em uma tabela existente usando o procedimento
DBMS_CLOUD.COPY_DATA
.Por exemplo:
CREATE TABLE WEATHER2 (WEATHER_STATION_ID VARCHAR2(20), WEATHER_STATION_NAME VARCHAR2(50)); / BEGIN
DBMS_CLOUD.COPY_DATA
( table_name => 'WEATHER2', credential_name => 'DEF_CRED_NAME', file_uri_list => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o/jsonfiles*', format => JSON_OBJECT('type' value 'json', 'columnpath' value '["$.WEATHER_STATION_ID", "$.WEATHER_STATION_NAME"]') ); END; /Os parâmetros são:
-
table_name
: é o nome da tabela de destino. -
credential_name
: é o nome da credencial criada na etapa anterior. -
file_uri_list
: é uma lista delimitada por vírgulas dos arquivos de origem que você deseja carregar. Você pode usar curingas nos nomes de arquivo em seus URIs. O caractere "*" pode ser usado como curinga para vários caracteres, o caractere "?" pode ser usado como curinga para um único caractere. -
format
: paraDBMS_CLOUD.COPY_DATA
com dados JSON, atype
éjson
. Especifique outros valores de formato para definir as opções para descrever o formato do arquivo de origem JSON. Consulte DBMS_CLOUD Opções de Formato de Pacote para obter mais informações.
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.Para obter informações detalhadas sobre os parâmetros, consulte ProcedimentoCOPY_DATA.
-
Tópico principal: Carregar JSON no Autonomous Database