DBMS_SHARE Constantes

Essas constantes são usadas pelo pacote DBMS_SHARE.

Arquivos Desanexados

Constantes usadas pelo Procedimento PURGE_DETACHED_FILES.

Nome Tipo Valor Descrição
PURGE_DROP PLS_INTEGER 1 Tentativa de eliminar os arquivos, usando a credencial especificada. Se o arquivo não puder ser eliminado, ele continuará sendo listado nas exibições *_SHARE_DETACHED_FILES.
PURGE_DROP_FORCE PLS_INTEGER 2 Tentativa de eliminar os arquivos, usando a credencial especificada. O arquivo é removido das visualizações *_SHARE_DETACHED_FILES, mesmo que a tentativa de eliminar o arquivo falhe novamente.
PURGE_FORGET PLS_INTEGER 3 Remova as views *_SHARE_DETACHED_FILES dos arquivos sem tentar eliminá-las.

Nível de Log

Constantes usadas para definir o nível de informações coletadas no log. Esses níveis controlam o número de eventos que são registrados no ALL_SHARE_EVENTS e ALL_SHARE_RECIPIENTS.

Consulte SET_SHARE_LOG_LEVEL Procedures e SET_RECIPIENT_LOG_LEVEL Procedure.

Nome Tipo Valor Descrição
LOG_LEVEL_ERRORS_ONLY PLS_INTEGER 0 Apenas registra erros em log.
LOG_LEVEL_BASIC PLS_INTEGER 1 Registrar erros e informações básicas.
LOG_LEVEL_DETAIL PLS_INTEGER 2 Registrar erros e detalhes adicionais.
LOG_LEVEL_DEBUG PLS_INTEGER 3 Registrar nível de informação de depuração.

Compartilhar Propriedades do Job

Propriedades usadas no ProcedimentoUPDATE_SHARE_JOB_PROPERTY.

Nome Tipo Valor Descrição
PROP_SHARE_JOB_DOP VARCHAR2(7) 'JOB_DOP' A propriedade JOB_DOP determina quantos jobs DBMS_SCHEDULER são usados para publicar o compartilhamento. Deve ser um número entre 1 e 5.
PROP_SHARE_JOB_CLASS VARCHAR2(9) 'JOB_CLASS' A propriedade JOB_CLASS determina a classe de job do scheduler que é usada para publicar o compartilhamento. Consulte ALL_SCHEDULER_JOB_CLASSES para obter uma lista de valores válidos. O valor-padrão é DEFAULT_JOB_CLASS.
PROP_SHARE_JOB_PRIORITY VARCHAR2(12) 'JOB_PRIORITY' A propriedade JOB_PRIORITY determina a prioridade relativa quando dois ou mais compartilhamentos do mesmo usuário estão sendo publicados ao mesmo tempo. O valor deve ser um número, com 0 como o padrão. Ações com prioridade mais alta serão processadas antes de ações com prioridade mais baixa. As ações com a mesma prioridade são processadas por ordem de chegada.
Valores padrão para prioridade do cargo:
SHARE_PRIORITY_LOW     CONSTANT NUMBER := 1;
SHARE_PRIORITY_DEFAULT CONSTANT NUMBER := 2;
SHARE_PRIORITY_HIGH    CONSTANT NUMBER := 3;

Compartilhar propriedades

Constantes usadas para indicar as propriedades de um compartilhamento.

Consulte Procedimento UPDATE_SHARE_PROPERTY, Procedimento UPDATE_DEFAULT_SHARE_PROPERTY e Função GET_SHARE_PROPERTY.

Nome Tipo Valor Descrição
PROP_SHARE_DESC VARCHAR2(11) 'DESCRIPTION' Uma descrição localmente visível do compartilhamento.
PROP_SHARE_PUBLIC_DESC VARCHAR2(18) 'PUBLIC_DESCRIPTION' Uma descrição visível externamente do compartilhamento.
PROP_SHARE_SPLIT_SIZE VARCHAR2(10) 'SPLIT_SIZE' A propriedade SPLIT_SIZE determina o tamanho dos arquivos parquet gerados. O algoritmo funciona da seguinte forma:
  1. O Otimizador SQL estima o tamanho em bytes de um determinado segmento (por exemplo, uma partição de uma tabela ou os resultados de uma view).
  2. O número de bytes é dividido pelo SPLIT_SIZE e arredondado para cima para produzir o "número de divisões".
  3. Os dados no segmento são, então, divididos nesse "número de divisões" usando algum método (por exemplo, ROWID, colunas de índice, colunas especificadas etc.).
  4. Cada pedaço de dados é então convertido em um arquivo parquet.

Observe que o arquivo parquet geralmente será menor que o SPLIT_SIZE devido à compactação. Em particular, SPLIT_SIZE determina a quantidade de dados antes da compactação.

PROP_SHARE_LOG_LEVEL VARCHAR2(9) 'LOG_LEVEL' A propriedade LOG_LEVEL determina o volume de informações que serão registradas no log ALL_SHARE_EVENTS.
PROP_SHARE_VERSION_ACCESS VARCHAR2(14) 'VERSION_ACCESS' As versões de um compartilhamento publicado que um destinatário pode ver.

Compartilhar Tipo de PAR do Destinatário

Essas constantes são os valores válidos para a propriedade PROP_RECIPIENT_PAR_TYPE no UPDATE_RECIPIENT_PROPERTY Procedure e GET_RECIPIENT_PROPERTY.

Nome Tipo Valor Descrição
PAR_TYPE_FOLDER PLS_INTEGER 1 PARs dá acesso a toda a pasta.
PAR_TYPE_FILE PLS_INTEGER 2 As PARs dão acesso a um arquivo por vez.

Compartilhar propriedades do destinatário

Essas constantes são usadas na Função GET_SHARE_PROPERTY, Procedimento UPDATE_DEFAULT_SHARE_PROPERTY e Procedimento UPDATE_SHARE_PROPERTY.

Nome Tipo Valor Descrição
PROP_RECIPIENT_PAR_LIFETIME VARCHAR2(12) 'PAR_LIFETIME' O tempo de vida dos URLs de Solicitação Pré-autenticada enviados ao destinatário por meio da API de compartilhamento delta. O padrão é três horas: '00 03:00:00'
PROP_RECIPIENT_MIN_PAR_LIFETIME VARCHAR2(16) 'MIN_PAR_LIFETIME' O tempo de vida mínimo garantido de URLs de Solicitação Pré-autenticada enviados ao destinatário por meio da API de compartilhamento delta. Se houver uma PAR existente para o mesmo arquivo parquet, ela será reutilizada somente se a vida útil restante exceder esse valor mínimo. O padrão é 2.1/2 horas: '00.02:30:00'
PROP_RECIPIENT_MAX_PAR_LIFETIME VARCHAR2(16) 'MAX_PAR_LIFETIME' Uma configuração de administrador que define a vida útil máxima permitida para qualquer destinatário. O padrão é 1 dia: '01 00:00:00'
PROP_RECIPIENT_TOKEN_LIFETIME VARCHAR2(14) 'TOKEN_LIFETIME' Uma string, no formato INTERVAL DAY TO SECOND, representando a vida útil de um token de portador de compartilhamento delta. O padrão é uma hora: '01 00:00:00'.
PROP_RECIPIENT_MAX_TOKEN_LIFETIME VARCHAR2(18) 'MAX_TOKEN_LIFETIME' Uma definição de administrador que define a vida útil máxima permitida do token do portador para qualquer destinatário. O padrão é 90 dias: '90 00:00:00'
PROP_RECIPIENT_EMAIL VARCHAR2(5) 'EMAIL' O e-mail do destinatário. Isso só é necessário para destinatários de compartilhamento delta.
PROP_RECIPIENT_DESCRIPTION VARCHAR2(11) 'DESCRIPTION' Uma descrição textual do destinatário.
PROP_RECIPIENT_LOG_LEVEL VARCHAR2(9) 'LOG_LEVEL' O nível de log do destinatário. Isso controla o que é registrado em USER_SHARE_RECIPIENT_EVENTS. O valor deve ser uma das constantes LOG_LEVEL_*.
PROP_RECIPIENT_SHARING_ID VARCHAR2(10) 'SHARING_ID' O ID de compartilhamento do destinatário. Isso só é necessário para destinatários do Autonomous Database.
PROP_RECIPIENT_PAR_TYPE VARCHAR2(8) 'PAR_TYPE' O tipo de solicitação pré-autenticada a ser criada. Deve ser um dos PAR_TYPE_FOLDER (padrão) ou PAR_TYPE_FILE.
PROP_RECIPIENT_VERSION_ACCESS VARCHAR2(14) 'VERSION_ACCESS' Especifica quais versões de compartilhamentos publicados um destinatário pode ver. Um dos VERSION_ACCESS_CURRENT ou VERSION_ACCESS_ANY.

Compartilhar Propriedades da Tabela

Constantes usadas para indicar propriedades da tabela de compartilhamento. Eles são usados pela Função GET_SHARE_TABLE_PROPERTY e pelo Procedimento UPDATE_SHARE_TABLE_PROPERTY.

Nome Tipo Valor Descrição
PROP_SHARE_TABLE_SPLIT_METHOD VARCHAR2(12) 'SPLIT_METHOD' Especifica como um segmento deve ser dividido em arquivos diferentes.
SPLIT_METHOD_AUTO VARCHAR2(4) 'AUTO' O Autonomous Database determina como os segmentos são divididos.
SPLIT_METHOD_RANGE VARCHAR2(5) 'RANGE' Divida segmentos com base nos intervalos de valores. Os intervalos exatos são determinados pela análise dos histogramas de dados. Este método requer que um ou mais split_columns sejam especificados.
SPLIT_METHOD_ROWID VARCHAR2(5) 'ROWID' Divida segmentos com base em ROWID.
SPLIT_METHOD_HASH VARCHAR2(4) 'HASH' Dividir segmentos com base em valores HASH. Este método requer que um ou mais split_columns sejam especificados.
SPLIT_METHOD_VALUE VARCHAR2(5) 'VALUE' Dividir segmentos com base em valores distintos. Este método requer que um ou mais split_columns sejam especificados.
PROP_SHARE_TABLE_SPLIT_COLUMNS VARCHAR2(13) 'SPLIT_COLUMNS' Especifica quais colunas são usadas para divisão. Eles são necessários para os métodos RANGE, VALUE e HASH. O valor deve ser um conjunto de colunas compartilhadas delimitadas por vírgulas (por exemplo, 'STATE,CITY' ou 'STATE","CITY").
PROP_SHARE_TABLE_ORDER_COLUMNS VARCHAR2(13) 'ORDER_COLUMNS' Especifica quais colunas são usadas para ordenar ao reunir o parquet. O valor deve ser um conjunto de colunas compartilhadas delimitadas por vírgulas (por exemplo, 'STATE,CITY' ou 'STATE","CITY").
PROP_SHARE_TABLE_SHARE_COLUMNS VARCHAR2(13) 'SHARE_COLUMNS' especifica quais colunas são compartilhadas. O valor é um conjunto delimitado por vírgulas de colunas compartilhadas. Por exemplo, 'STATE,CITY' ou '"STATE","CITY"'.
PROP_SHARE_TABLE_SPLIT_SIZE VARCHAR2(10) 'SPLIT_SIZE' Substituir o nível de compartilhamento split_size de uma tabela específica. O valor é um número.
PROP_SHARE_TABLE_GATHER_STATS VARCHAR2(12) 'GATHER_STATS' Se o Autonomous Database reunir estatísticas, o valor de 'GATHER_STATS' será 'YES'. Caso contrário, o valor será 'NO'.
PROP_SHARE_TABLE_SPLIT_ROWS VARCHAR2(10) 'SPLIT_ROWS' A propriedade SPLIT_ROWS é uma forma alternativa de especificar o volume de dados a serem armazenados em cada arquivo parquet.
  1. O Autonomous Database calcula o número de linhas em um determinado segmento (por exemplo, uma partição de uma tabela ou os resultados de uma view).
  2. O número de linhas é dividido pelo SPLIT_ROWS e arredondado para cima para produzir o "número de divisões".
  3. Em seguida, os dados no segmento são divididos nesse número de divisões por meio de algum método (por exemplo, ROWID, colunas de índice, colunas especificadas etc.)
  4. Cada pedaço de dados é então convertido em um arquivo parquet.

É recomendável usar a propriedade SPLIT_SIZE para controlar o número de divisões, pois isso reflete a quantidade de dados em cada linha. Uma linha com 900 colunas de VARCHAR2(4000), por exemplo, é muito maior que uma linha com uma única coluna do tipo NUMBER(1).

Só use SPLIT_ROWS se você tiver contabilizado o volume médio de dados em cada linha.

PROP_SHARE_TABLE_FLASHBACK VARCHAR2(9) 'FLASHBACK' A propriedade FLASHBACK determina se a tabela será publicada usando consultas de FLASHBACK para garantir a consistência de leitura entre os diferentes arquivos de exportação. O valor deve ser YES, NO ou AUTO.

A definição AUTO usará flashback se estiver disponível.

A definição YES fará com que a publicação falhe se o flashback não for possível na tabela ou na view.

A configuração NO não usará flashback, o que significa que os arquivos parquet podem representar diferentes instantâneos dos dados.

Tipos de Compartilhamento

Constantes usadas durante a criação do compartilhamento para identificar o tipo de compartilhamento.

Consulte CREATE_SHARE Procedure.

Nome Tipo Valor Descrição
SHARE_TYPE_VERSIONED DBMS_ID 'VERSIONED' O compartilhamento é usado para compartilhar dados com versão.
SHARE_TYPE_LIVE DBMS_ID 'LIVE' O compartilhamento é usado para compartilhar dados ativos.

Tipo de ID de Compartilhamento

Usado em ASSERT_SHARING_ID e GET_SHARING_ID.

Nome Tipo Valor Descrição
SHARING_ID_TYPE_TENANCY VARCHAR2(7) 'TENANCY' O ID de compartilhamento representa uma Tenancy do OCI.
SHARING_ID_TYPE_COMPARTMENT VARCHAR2(11) 'COMPARTMENT' O ID de compartilhamento representa um Compartimento do OCI.
SHARING_ID_TYPE_DATABASE VARCHAR2(8) 'DATABASE' O ID de compartilhamento representa um OCI Autonomous Database.
SHARING_ID_TYPE_REGION VARCHAR2(6) 'REGION' O ID de compartilhamento representa uma Região do OCI.

Acesso à Versão

Valores possíveis da propriedade de compartilhamento VERSION_ACCESS. Isso é usado para implementar o delta "viagem no tempo". Esses são os valores válidos associados ao PROP_SHARE_VERSION_ACCESS e ao PROP_RECIPIENT_VERSION_ACCESS.

Eles podem ser usados para ativar a propriedade "version" no ponto final de consulta de compartilhamento delta, que permite que os destinatários selecionem versões específicas dos dados em vez de sempre receberem a versão CURRENT. Você precisa ativar isso no compartilhamento e no destinatário.

Por exemplo:
UPDATE_SHARE_PROPERTY(
          share_name => '...',
          share_property => DBMS_SHARE.PROP_SHARE_VERSION_ACCESS,
          new_value => DBMS_SHARE.VERSION_ACCESS_ANY);

UPDATE_SHARE_PROPERTY(
          share_name => '...',
          share_property => DBMS_SHARE.PROP_RECIPIENT_VERSION_ACCESS,
          new_value => DBMS_SHARE.VERSION_ACCESS_ANY);
Nome Tipo Valor Descrição
VERSION_ACCESS_CURRENT PLS_INTEGER 1 Um destinatário pode ver apenas a versão ATUAL. (Padrão)
VERSION_ACCESS_ANY PLS_INTEGER 2 Um destinatário pode escolher qualquer versão CURRENT ou RETIRED.