Resumo de Subprogramas DBMS_CLOUD_REPO

Esta seção abrange os subprogramas DBMS_CLOUD_REPO fornecidos com o Autonomous AI Database.

O pacote DBMS_CLOUD_REPO é composto por:

Pré-requisitos

Como desenvolvedor, você pode usar procedimentos DBMS_CLOUD com Autonomous AI Databases implantados na Oracle Public Cloud, Multicloud ou Exadata Cloud@Customer.

Dependendo da opção de implantação, os pré-requisitos a seguir devem ser atendidos para usar os procedimentos DBMS_CLOUD com os provedores de serviços Amazon S3, Azure Blob Storage e Google Cloud Storage.

Procedimento CREATE_BRANCH

Este procedimento cria uma ramificação no Cloud Code Repository identificada pelo argumento de handle repo.

Sintaxe

PROCEDURE DBMS_CLOUD_REPO.CREATE_BRANCH(
    repo               IN   CLOB,
    branch_name        IN   VARCHAR2,
    parent_branch_name IN   VARCHAR2 DEFAULT NULL,
    parent_commit_id   IN   VARCHAR2 DEFAULT NULL
 );

Parâmetros

Parâmetro Descrição
repo

Especifica o handle do repositório.

Esse parâmetro é obrigatório e suportado para todos os provedores de nuvem.

branch_name

Especifica o nome da ramificação do repositório.

Esse parâmetro é obrigatório e suportado para todos os provedores de nuvem.

parent_branch_name

Cria a nova ramificação usando a confirmação principal da ramificação pai especificada.

Esse parâmetro é suportado para todos os provedores de nuvem.

Se você não fornecer um valor parent_branch_name, o parent_branch_name será definido como main.

parent_commit_id

Cria a nova ramificação usando o commit do repositório especificado.

Este parâmetro é suportado para todos os provedores de nuvem.

Se você não fornecer um valor parent_commit_id, o parent_commit_id será definido como um valor NULL.

Exemplo

Observação: Para criar uma ramificação em um repositório do Cloud Code, você deve especificar a ramificação pai ou o id de commit pai.

BEGIN
  DBMS_CLOUD_REPO.CREATE_BRANCH (
    repo                 => l_repo,
    branch_name          => 'test_branch',
    parent_branch_name   => 'main'
    );
END;
/

Observações de Uso

Para executar o procedimento DBMS_CLOUD_REPO.CREATE_BRANCH, você deve estar conectado como usuário ADMIN ou ter o privilégio EXECUTE em DBMS_CLOUD_REPO.

Procedimento CREATE_REPOSITORY

Este procedimento cria um Cloud Code Repository identificado pelo argumento de manipulação repo.

Sintaxe

PROCEDURE DBMS_CLOUD_REPO.CREATE_REPOSITORY(
      repo                 IN   CLOB,
      description          IN   CLOB     DEFAULT NULL,
      private              IN   BOOLEAN  DEFAULT TRUE
);

Parâmetros

Parâmetro Descrição
repo Especifica o handle do repositório.

Esse parâmetro é suportado para todos os provedores de nuvem.

description Uma descrição de texto curta para o repositório.

Esse parâmetro é compatível com o GITHUB e o provedor de nuvem da AWS.

private

O repositório é privado e só pode ser acessado com credenciais válidas

Este parâmetro só é suportado para o provedor de nuvem GITHUB.

Exemplo

BEGIN
  DBMS_CLOUD_REPO.CREATE_REPOSITORY(
    repo        => l_repo,
    description => 'My test repo',
    private => TRUE
    );
END;
/

Procedimento DELETE_BRANCH

Este procedimento exclui uma ramificação no repositório do Cloud Code identificado pelo argumento de manipulação repo.

Sintaxe

PROCEDURE DBMS_CLOUD_REPO.DELETE_BRANCH (
      repo              IN  CLOB,
      branch_name       IN  VARCHAR2  DEFAULT NULL
 );

Parâmetros

Parâmetro Descrição
repo Especifica o handle do repositório. Esse parâmetro é obrigatório e suportado para todos os provedores de nuvem.
branch_name Excluir ramificação de um repositório específico. Esse parâmetro é obrigatório e suportado para todos os provedores de nuvem.

Exemplo

BEGIN
  DBMS_CLOUD_REPO.DELETE_BRANCH (
      repo        => l_repo,
      branch_name => 'test_branch'
  );
END;
/

Observações de Uso

Para executar o procedimento DBMS_CLOUD_REPO.DELETE_BRANCH, você deve estar conectado como usuário ADMIN ou ter o privilégio EXECUTE em DBMS_CLOUD_REPO.

Procedimento DELETE_FILE

Este procedimento exclui um arquivo do repositório do Cloud Code identificado pelo argumento de manipulação repo.

Sintaxe

PROCEDURE DBMS_CLOUD_REPO.DELETE_FILE(
      repo              IN  CLOB,
      file_path         IN  VARCHAR2,
      branch_name       IN  VARCHAR2  DEFAULT NULL,
      commit_details    IN  CLOB      DEFAULT NULL
);

Parâmetros

Parâmetro Descrição
repo Especifica o handle do repositório.
file_path Caminho do arquivo para excluir o arquivo no repositório.
branch_name Excluir arquivo de uma ramificação específica.
commit_details

Detalhes do Commit como um documento JSON

{"message": "Commit message", "author": {"name": "Committing user name", "email": "Email of committing user" } }

Exemplo

BEGIN
  DBMS_CLOUD_REPO.DELETE_FILE(
      repo        => l_repo,
      file_path   => 'scripts/test3.sql',
      branch_name => 'test_branch'
  );
END;
/

Procedimento DELETE_REPOSITORY

Este procedimento exclui o Cloud Code Repository identificado pelo argumento de manipulação repo.

Sintaxe

PROCEDURE DBMS_CLOUD_REPO.DELETE_REPOSITORY(
      repo           IN   CLOB
);

Parâmetros

Parâmetro Descrição
repo Especifica o handle do repositório.

Exemplo

BEGIN
  DBMS_CLOUD_REPO.DELETE_REPOSITORY(
       repo => l_repo
  );
END;
/

Procedimento EXPORT_OBJECT

Este procedimento faz upload dos metadados DDL de um objeto de banco de dados para o repositório do Cloud Code identificado pelo argumento de manipulação repo. Este procedimento é uma maneira fácil de fazer upload da definição de metadados de um objeto de banco de dados em uma única etapa.

Sintaxe

PROCEDURE DBMS_CLOUD_REPO.EXPORT_OBJECT(
      repo              IN  CLOB,
      file_path         IN  VARCHAR2,
      object_type       IN  VARCHAR2,
      object_name       IN  VARCHAR2 DEFAULT NULL,
      object_schema     IN  VARCHAR2 DEFAULT NULL,
      branch_name       IN  VARCHAR2 DEFAULT NULL,
      commit_details    IN  CLOB     DEFAULT NULL,
      append            IN  BOOLEAN  DEFAULT FALSE
);

Parâmetros

Parâmetro Descrição
repo Especifica o handle do repositório.
file_path Caminho do arquivo para fazer upload dos metadados do objeto no repositório.
object_type Tipo de objeto suportado por DBMS_METADATA. Consulte DBMS_METADATA: tabela Tipos de Objeto em Referência de Tipos e Pacotes PL/SQL do Oracle Database 19c ou Referência de Tipos e Pacotes PL/SQL do Oracle Database 26ai para obter detalhes.
object_name Nome do objeto de banco de dados para recuperar metadados.
object_schema Esquema proprietário do objeto de banco de dados.
branch_name Coloque o arquivo em uma ramificação específica.
commit_details Detalhes do Commit como documento JSON:{"message": "Commit message", "author": {"name": "Committing user name", "email": "Email of committing user" } }
append Anexe a DDL de metadados ao arquivo existente.

Observações de Uso

Para controle personalizado na DDL do objeto, você pode usar DBMS_METADATA.GET_DDL junto com DBMS_CLOUD_REPO.PUT_FILE. Para obter a definição de metadados do objeto, o usuário atual deve ter o privilégio de recuperar os metadados do objeto. Consulte DBMS_METADATA em Oracle Database 19c PL/SQL Packages and Types Reference ou Oracle Database 26ai PL/SQL Packages and Types Reference para obter os requisitos de segurança do pacote.

Exemplo

BEGIN
  DBMS_CLOUD_REPO.EXPORT_OBJECT(
     repo        => l_repo,
     object_type => 'PACKAGE',
     object_name => 'MYPACK',
     file_path   => 'mypack.sql'
  );
END;
/

Procedimento EXPORT_SCHEMA

Este procedimento exporta metadados de todos os objetos em um esquema para a ramificação do Cloud Code Repository identificada pelo argumento de manipulação repo.

Sintaxe

PROCEDURE DBMS_CLOUD_REPO.EXPORT_SCHEMA(
     repo            IN CLOB,
     file_path       IN VARCHAR2,
     schema_name     IN VARCHAR2,
     filter_list     IN CLOB         DEFAULT NULL,
     branch_name     IN VARCHAR2     DEFAULT NULL,
     commit_details  IN CLOB         DEFAULT NULL
);

Parâmetros

Parâmetro Descrição
repo

Especifica o handle do repositório.

Esse parâmetro é obrigatório e suportado para todos os provedores de nuvem.

file_path

Especifica o nome do arquivo de esquema a ser carregado no repositório.

Esse parâmetro é obrigatório e suportado para todos os provedores de nuvem.

schema_name

Especifica o nome do esquema para o qual um script DDL deve ser submetido a upload para a ramificação Cloud Code Repository.

Esse parâmetro é obrigatório e suportado para todos os provedores de nuvem.

filter_list

Especifica o CLOB do array JSON que define as condições de filtro para incluir ou excluir os objetos cujos metadados precisam ser exportados.

Esse parâmetro é suportado para todos os provedores de nuvem.

Os parâmetros JSON para filter_list são:

  • match_type: Especifica o tipo de filtro a ser aplicado aos tipos de objeto ou nomes de objeto. Os valores match_type válidos são:

    • in/not_in

    • like/not_like

    • equal/not_equal

  • type: Especifica o tipo de objeto pelo qual filtrar.

  • name: Especifica o nome do objeto pelo qual filtrar.

branch_name

Especifica o nome da ramificação do repositório.

Esse parâmetro é suportado para todos os provedores de nuvem.

Se você não fornecer um valor branch_name, o branch_name será definido como a ramificação do repositório padrão.

commit_details

Detalhes do Commit como um documento JSON

{"message": "Commit message", "author": {"name": "Committing user name", "email": "Email of committing user" } }

Esse parâmetro é suportado para todos os provedores de nuvem.

Se você não fornecer um valor commit_details, o commit_details será definido como a mensagem de confirmação padrão que inclui as informações sobre o usuário da sessão do banco de dados atual e o nome do banco de dados que está executando o commit.

Exemplo

BEGIN
  DBMS_CLOUD_REPO.EXPORT_SCHEMA(
    repo          => l_repo,
    schema_name   => 'USER1',
    file_path     => 'myschema_ddl.sql'
    filter_list   =>
        to_clob('[
             { "match_type":"equal",
                 "type":"table"
             },
             { "match_type":"not_equal",
                 "type":"view"
             },
             { "match_type":"in",
                 "type":"table",
                 "name": " ''EMPLOYEE_SALARY'',''EMPLOYEE_ADDRESS'' "
             },
             { "match_type":"equal",
                 "type":"sequence",
                 "name": "EMPLOYEE_RECORD_SEQ"
             },
             { "match_type":"like",
                 "type":"table",
                 "name": "%OFFICE%"
             }
        ]'
     );
  );
END;
/

Observações de Uso

Para executar o procedimento DBMS_CLOUD_REPO.EXPORT_SCHEMA, você deve estar conectado como usuário ADMIN ou ter o privilégio EXECUTE em DBMS_CLOUD_REPO.

Procedimento e Função GET_FILE

A função faz download do conteúdo de um arquivo do repositório do Cloud Code. O procedimento permite que você faça download do conteúdo de um arquivo do repositório do Cloud Code e salve o arquivo em um diretório.

Sintaxe

FUNCTION DBMS_CLOUD_REPO.GET_FILE(
      repo              IN  CLOB,
      file_path         IN  VARCHAR2,
      branch_name       IN  VARCHAR2  DEFAULT NULL,
      tag_name          IN  VARCHAR2  DEFAULT NULL,
      commit_name       IN  VARCHAR2  DEFAULT NULL
) RETURN CLOB;

PROCEDURE DBMS_CLOUD_REPO.GET_FILE(
      repo              IN  CLOB,
      file_path         IN  VARCHAR2,
      directory_name    IN  VARCHAR2,
      target_file_name  IN  VARCHAR2  DEFAULT NULL,
      branch_name       IN  VARCHAR2  DEFAULT NULL,
      tag_name          IN  VARCHAR2  DEFAULT NULL,
      commit_name       IN  VARCHAR2  DEFAULT NULL
);

Parâmetros

Parâmetro Descrição
repo Especifica o handle do repositório.
file_path Caminho de arquivo no repositório.
directory_name Nome do objeto do diretório para salvar o conteúdo do arquivo.
target_file_name Nome do arquivo de destino para salvar o conteúdo no diretório.
branch_name Obter arquivo de uma ramificação específica.
tag_name Obter arquivo de uma Tag específica.
commit_name Obter arquivo de um commit específico.

Exemplo

BEGIN
  DBMS_CLOUD_REPO.GET_FILE(
     repo             =>  l_repo,
     file_path        => 'test3.sql',
     directory_name   => 'DATA_PUMP_DIR',
     target_file_name => 'test2.sql'
  );
END;
/

Função INIT_AWS_REPO

Essa função inicializa um identificador de repositório da AWS e retorna um tipo opaco.

Sintaxe

FUNCTION DBMS_CLOUD_REPO.INIT_AWS_REPO(
      credential_name IN  VARCHAR2,
      repo_name       IN  VARCHAR2,
      region          IN  VARCHAR2
)  RETURN repo;

Parâmetros

Parâmetro Descrição
credential_name Objeto de credencial que especifica chave de acesso/chave secreta do AWS CodeCommit.
repo_name Especifica o nome de repositório.
region Especifica a região AWS do repositório CodeCommit.

Exemplo

BEGIN
  :repo := DBMS_CLOUD_REPO.INIT_AWS_REPO(
                 credential_name => 'AWS_CRED',
                 repo_name       => 'my_repo',
                 region          => 'us-east-1'
           );
END;
/

Função INIT_AZURE_REPO

Essa função inicializa um identificador de repositório do Azure e retorna um tipo opaco. Essa função só é suportada para o provedor de nuvem do Azure.

Sintaxe

FUNCTION DBMS_CLOUD_REPO.INIT_AZURE_REPO(
      credential_name IN  VARCHAR2,
      repo_name       IN  VARCHAR2,
      organization    IN  VARCHAR2,
      project         IN  VARCHAR2
)  RETURN repo;

Parâmetros

Parâmetro Descrição
credential_name Objeto de credencial que especifica o Azure, com um Nome de Usuário e um Token de Acesso Pessoal (PAT).
repo_name Especifica o nome de repositório.
organization Especifica a Organização do Azure DevOps.
project Nome do Azure Team Project.

Exemplo

BEGIN
  :repo := DBMS_CLOUD_REPO.INIT_AZURE_REPO(
                 credential_name => 'AZURE_CRED',
                 repo_name       => 'my_repo',
                 organization    => 'myorg',
                 project         => 'myproj',
           );
END;
/

Função INIT_GITHUB_REPO

Esta função inicializa um identificador de repositório GitHub e retorna um tipo opaco.

Sintaxe

FUNCTION DBMS_CLOUD_REPO.INIT_GITHUB_REPO(
      credential_name IN  VARCHAR2  DEFAULT NULL,
      repo_name       IN  VARCHAR2,
      owner           IN  VARCHAR2)
RETURN repo;

Parâmetros

Parâmetro Descrição
credential_name

Objeto de credencial que especifica o GitHub.

E-mail do Usuário e Token de Acesso Pessoal (PAT).

repo_name Especifica o nome de repositório.
owner Especifica o proprietário do repositório.

Exemplo

BEGIN
  :repo := DBMS_CLOUD_REPO.INIT_GITHUB_REPO(
                 credential_name => 'GITHUB_CRED',
                 repo_name       => 'my_repo',
                 owner           => 'foo'
           );
END;
/

Função INIT_REPO

Essa função inicializa um handle do Cloud Code Repository e retorna um objeto JSON opaco. Essa função é uma interface genérica para aceitar um documento JSON e evita a necessidade de alterar o código. Você só precisa alterar um documento JSON ao mover um repositório de código de um repositório do Cloud Code para outro repositório do Cloud Code.

Sintaxe

FUNCTION DBMS_CLOUD_REPO.INIT_REPO(
     params      IN   CLOB)
RETURN CLOB;

Parâmetros

Parâmetro JSON Descrição
provider

Provedor de repositório de código de nuvem do seguinte:

DBMS_CLOUD_REPO.GITHUB_REPO ('GITHUB')

DBMS_CLOUD_REPO.AWS_REPO ('AWS')

DBMS_CLOUD_REPO.AZURE_REPO ('AZURE')

repo_name Especifica o nome de repositório. DBMS_CLOUD_REPO.PARAM_REPO_NAME
owner

Proprietário do repositório do GitHub.DBMS_CLOUD_REPO.PARAM_OWNER

Este parâmetro só é aplicável ao provedor de nuvem GitHub.

region

Região do repositório da AWS.DBMS_CLOUD_REPO_PARAM_REGION

Esse parâmetro só é aplicável ao provedor de nuvem da AWS.

organization

Organização do Azure.DBMS_CLOUD_REPO_PARAM_ORGANIZATION

Esse parâmetro só é aplicável ao provedor de nuvem do Azure.

project

Projeto da Equipe do Azure.DBMS_CLOUD_REPO_PARAM_PROJECT

Esse parâmetro só é aplicável ao provedor de nuvem do Azure.

Exemplo

BEGIN
  :repo := DBMS_CLOUD_REPO.INIT_REPO(
          params => JSON_OBJECT('credential_name' value 'mycred',
                        'repo_name'       value 'myrepo',
                        'repo_owner'      value 'foo')
       );
END;
/

Procedimento INSTALL_FILE

Este procedimento instala instruções SQL de um arquivo no repositório do Cloud Code identificado pelo argumento de manipulação repo.

Sintaxe

PROCEDURE DBMS_CLOUD_REPO.INSTALL_FILE(
      repo              IN  CLOB,
      file_path         IN  VARCHAR2,
      branch_name       IN  VARCHAR2  DEFAULT NULL,
      tag_name          IN  VARCHAR2  DEFAULT NULL,
      commit_name       IN  VARCHAR2  DEFAULT NULL,
      stop_on_error     IN  BOOLEAN   DEFAULT TRUE
);

Parâmetros

Parâmetro Descrição
repo Especifica o handle do repositório.
file_path Caminho de arquivo no repositório.
branch_name Ramificação para instalar o arquivo de uma ramificação específica.
tag_name Tag para instalar o arquivo de uma Tag específica.
commit_name ID de commit para instalar o arquivo de um commit específico.
stop_on_error Pare de executar as instruções SQL no primeiro erro.

Observações sobre Uso

Exemplo

BEGIN
     DBMS_CLOUD_REPO.INSTALL_FILE(
         repo          => l_repo,
         file_path     => 'test3.sql',
         stop_on_error => FALSE
     );
END;
/

Procedimento INSTALL_SQL

Este procedimento instala instruções SQL de um buffer fornecido como entrada.

Sintaxe

PROCEDURE DBMS_CLOUD_REPO.INSTALL_SQL(
      content           IN  CLOB,
      stop_on_error     IN  BOOLEAN  DEFAULT TRUE
);

Parâmetros

Parâmetro Descrições
content CLOB que contém as instruções SQL a serem executadas.
stop_on_error Pare de executar as instruções SQL no primeiro erro.

Observações sobre Uso

Exemplo

BEGIN
  DBMS_CLOUD_REPO.INSTALL_SQL(
      content   => 'create table t1 (x varchar2(30))' || CHR(10) || '/',
      stop_on_error => FALSE
  );
END;
/

Função LIST_BRANCHES

Essa função lista ramificações na ramificação do Cloud Code Repository identificada pelo argumento de manipulação repo.

Sintaxe

FUNCTION DBMS_CLOUD_REPO.LIST_BRANCHES(
    repo           IN   CLOB
) RETURN list_branch_ret_tab PIPELINED PARALLEL_ENABLE;

Parâmetros

Parâmetro Descrição
repo Especifica o handle do repositório. Esse parâmetro é obrigatório e suportado para todos os provedores de nuvem.

Exemplo

SELECT * FROM DBMS_CLOUD_REPO.LIST_BRANCHES (repo => l_repo);

Observações sobre Uso

Função LIST_COMMITS

Essa função lista commits na ramificação do Cloud Code Repository identificada pelo argumento de handle repo.

Sintaxe

FUNCTION DBMS_CLOUD_REPO.LIST_COMMITS(
      repo              IN  CLOB,
      branch_name       IN  VARCHAR2  DEFAULT NULL,
      file_path         IN  VARCHAR2 DEFAULT NULL,
      commit_id         IN  VARCHAR2  DEFAULT NULL
) RETURN list_commit_ret_tab PIPELINED PARALLEL_ENABLE;

Parâmetros

Parâmetro Descrição
repo

Especifica o handle do repositório.

Esse parâmetro é obrigatório e suportado para todos os provedores de nuvem.

branch_name

Listar commits de uma ramificação específica.

Esse parâmetro é suportado para todos os provedores de nuvem.

Se você não fornecer um valor branch_name, o branch_name será definido como main.

file_path

Lista arquivos no caminho da subpasta especificada no repositório.

Esse parâmetro só é suportado para provedores de nuvem Git e Azure.

Se você não fornecer um valor file_path, o file_path será definido como um valor NULL.

commit_id

Listar arquivos que começam no sha/id especificado

Esse parâmetro é suportado para todos os provedores de nuvem.

Se você não fornecer um valor commit_id, o commit_id será definido como um valor NULL.

Exemplos

SELECT name FROM DBMS_CLOUD_REPO.LIST_COMMITS(repo => l_repo);
SELECT name FROM DBMS_CLOUD_REPO.LIST_COMMITS (
    repo        => l_repo,
    commit_id   => '66dd2b23b74cd0afabd11af66c6aa9c550540ba6',
    file_path   => 'sub_dir/test11.sql'
);

Observações sobre Uso

Função LIST_FILES

Esta função faz download de um arquivo do repositório do Cloud Code. Opcionalmente, o conteúdo do arquivo pode ser acessado de uma ramificação, tag ou nome de commit específico. Por padrão, o arquivo é acessado na ramificação do repositório padrão. Os resultados incluem os nomes dos arquivos e os metadados adicionais sobre os arquivos.

Sintaxe

FUNCTION DBMS_CLOUD_REPO.LIST_FILES(
      repo              IN  CLOB,
      path              IN  VARCHAR2  DEFAULT NULL,
      branch_name       IN  VARCHAR2  DEFAULT NULL,
      tag_name          IN  VARCHAR2  DEFAULT NULL,
      commit_id         IN  VARCHAR2  DEFAULT NULL
) RETURN list_file_ret_tab PIPELINED PARALLEL_ENABLE;

Parâmetros

Parâmetro Descrição
repo Especifica o handle do repositório.
path Lista arquivos no caminho da subpasta especificada no repositório.
branch_name Listar arquivos de uma ramificação específica.
tag_name Listar arquivos de uma Tag específica.
commit_name Listar arquivos de um commit específico.

Observações sobre Uso

Exemplo

SELECT name FROM DBMS_CLOUD_REPO.LIST_FILES(repo => l_repo);
NAME
-------------------------
test3.sql

Função LIST_REPOSITORIES

Essa função lista todos os Repositórios de Código da Nuvem identificados pelo argumento de handle repo. Os resultados incluem os nomes de repositório e metadados adicionais sobre os repositórios.

Sintaxe

FUNCTION DBMS_CLOUD_REPO.LIST_REPOSITORIES(
      repo                 IN   CLOB
) RETURN list_repo_ret_tab PIPELINED PARALLEL_ENABLE;

Parâmetros

Parâmetro Descrição
repo

Especifica o handle do repositório.

Esse parâmetro é suportado por todos os provedores de nuvem.

description

Uma descrição de texto curta para o repositório.

Esse parâmetro é compatível com os provedores de nuvem GITHUB e AWS.

private

O repositório é privado e só pode ser acessado com credenciais válidas

Este parâmetro é suportado para o provedor de nuvem GITHUB.

Observações sobre Uso

Exemplo

SELECT name description FROM DBMS_CLOUD_REPO.LIST_REPOSITORIES(:repo);
NAME                  DESCRIPTION
--------------------- ---------------
TestRepo1             My test repo

Procedimento MERGE_BRANCH

Este procedimento mescla uma ramificação de repositório em outra ramificação especificada no Cloud Code Repository identificado pelo argumento de manipulação repo. O procedimento MERGE_BRANCH não é suportado no Azure no momento.

Sintaxe

PROCEDURE DBMS_CLOUD_REPO.MERGE_BRANCH (
    repo               IN   CLOB,
    branch_name        IN   VARCHAR2,
    parent_branch_name IN   VARCHAR2 DEFAULT NULL,
    commit_details     IN   CLOB      DEFAULT NULL
 );

Parâmetros

Parâmetro Descrição
repo

Especifica o handle do repositório.

Esse parâmetro é obrigatório e compatível com provedores de nuvem GITHUB e AWS.

branch_name

Especifica o nome da ramificação Git a ser mesclada.

Esse parâmetro é obrigatório e suportado para todos os provedores de nuvem.

target_branch_name

Especifica o nome da ramificação de destino a ser mesclada.

Esse parâmetro é obrigatório e suportado para todos os provedores de nuvem.

commit_details

Detalhes do Commit como um documento JSON

{"message": "Commit message", "author": {"name": "Committing user name", "email": "Email of committing user" } }

Se você não fornecer um valor commit_details, o commit_details será definido como a mensagem de confirmação padrão que inclui as informações sobre o usuário da sessão do banco de dados atual e o nome do banco de dados que está executando o commit.

Exemplo

BEGIN
  DBMS_CLOUD_REPO.MERGE_BRANCH (
    repo               => l_repo,
    branch_name        => 'test_branch',
    target_branch_name => 'main'
    );
END;
/

Observações de Uso

Para executar o procedimento DBMS_CLOUD_REPO.MERGE_BRANCH, você deve estar conectado como usuário ADMIN ou ter o privilégio EXECUTE em DBMS_CLOUD_REPO.

Procedimento PUT_FILE

Este procedimento faz upload de um arquivo para o repositório do Cloud Code identificado pelo argumento de manipulação repo. O procedimento é sobrecarregado para suportar o upload de um arquivo de um objeto de diretório ou o upload do conteúdo de um BLOB para o arquivo de repositório.

Sintaxe

PROCEDURE DBMS_CLOUD_REPO.PUT_FILE(
      repo              IN  CLOB,
      file_path         IN  VARCHAR2,
      contents          IN  BLOB,
      branch_name       IN  VARCHAR2  DEFAULT NULL,
      commit_details    IN  CLOB      DEFAULT NULL
);
PROCEDURE DBMS_CLOUD_REPO.PUT_FILE(
      repo              IN  CLOB,
      file_path         IN  VARCHAR2,
      directory_name    IN  VARCHAR2,
      source_file_name  IN  VARCHAR2  DEFAULT NULL,
      branch_name       IN  VARCHAR2  DEFAULT NULL,
      commit_details    IN  CLOB      DEFAULT NULL
);

Parâmetros

Parâmetro Descrição
repo Especifica o handle do repositório.
file_path Caminho do arquivo para upload do arquivo no repositório.
contents BLOB contendo o conteúdo do arquivo.
directory_name Nome do objeto do diretório que contém o nome do arquivo.
source_file_name Nome do arquivo de origem para upload no repositório.
branch_name Coloque o arquivo em uma ramificação específica.
commit_details

Detalhes do Commit como um documento JSON:

{"message": "Commit message", "author": {"name": "Committing user name", "email": "Email of committing user" } }

Exemplo

BEGIN
  DBMS_CLOUD_REPO.PUT_FILE(
     repo   => l_repo,
  );
END;
/

Procedimento UPDATE_REPOSITORY

Este procedimento atualiza um repositório do Cloud Code identificado pelo argumento de manipulação repo. UPDATE_REPOSITORY suporta a atualização do nome, da descrição ou do status de visibilidade privada, conforme suportado pelo repositório Cloud Code.

Sintaxe

PROCEDURE DBMS_CLOUD_REPO.UPDATE_REPOSITORY(
      repo                 IN OUT  CLOB,
      new_name             IN      VARCHAR2 DEFAULT NULL,
      description          IN      CLOB     DEFAULT NULL,
      private              IN      BOOLEAN  DEFAULT NULL
);

Parâmetros

Parâmetro Descrição
repo Especifica o handle do repositório. Esse parâmetro é suportado para todos os provedores de nuvem.
new_name Novo nome para repositório. Este parâmetro é suportado para todos os provedores de nuvem.
description Uma breve descrição de texto para o repositório. Esse parâmetro é suportado para provedores de nuvem GITHUB e AWS.
private

O repositório é privado e só pode ser acessado com credenciais válidas.

Este parâmetro é suportado para o provedor de nuvem GITHUB.

Exemplo

BEGIN
  DBMS_CLOUD_REPO.UPDATE_REPOSITORY(
     repo        => l_repo,
     new_name    => 'repo2'
  );
END;
/

Conteúdo Relacionado

Sobre o DBMS_CLOUD_REPO