GET_BASE_OBJECT_NAME_ONLY
Válido Para
Extract e Replicat
Descrição
Use a função GET_BASE_OBJECT_NAME_ONLY para recuperar o nome não qualificado (sem o catálogo, o contêiner ou o esquema) do objeto base de um objeto de origem ou de destino associado ao registro que está sendo processado. Essa função é válida para tabelas e outros objetos em uma operação DDL.
Para retornar o nome totalmente qualificado de um objeto base, consulte o seguinte:
Para retornar somente o esquema do objeto base, consulte o seguinte:
Os nomes de objeto de banco de dados são retornados exatamente como são definidos no banco de dados de hospedagem, incluindo a letra maiúscula.
Sintaxe
#include "usrdecs.h"
short result_code;
env_value_def env_value;
ERCALLBACK (GET_BASE_OBJECT_NAME_ONLY, &env_value, &result_code);
Buffer
typedef struct
{
char *buffer;
long max_length;
long actual_length;
short value_truncated;
short index;
short source_or_target;
} env_value_def;
Entrada
<buffer>
Um ponteiro para um buffer a fim de aceitar o nome do objeto retornado. O nome é nulo terminado.
<max_length>
O tamanho máximo do buffer alocado para aceitar o nome do objeto. Isso é retornado como uma string encerrada NULL.
<source_or_target>
Uma das opções a seguir indica se o nome do objeto de origem ou de destino deve ser retornado.
EXIT_FN_SOURCE_VAL
EXIT_FN_TARGET_VAL
Saída
<buffer>
O nome do objeto totalmente qualificado e encerrado por nulo, por exemplo, schema.object ou catalog.schema.object, dependendo da plataforma do banco de dados.
Se a sessão de caracteres da saída do usuário for definida com SET_SESSION_CHARSET como um valor diferente do conjunto de caracteres padrão do sistema operacional, conforme definido em ULIB_CS_DEFAULT no arquivo ucharset.h, o nome do objeto será interpretado no conjunto de caracteres da sessão.
tamanho real
O tamanho da string do nome do objeto retornado. O tamanho real não inclui o terminador nulo. O comprimento real será 0 se o objeto for uma tabela.
<value_truncated>
Um flag (0 ou 1) indicando se o valor foi truncado ou não. Truncação ocorre se o tamanho do nome do objeto mais o terminador nulo exceder o tamanho máximo do buffer.
Valores de Retorno
EXIT_FN_RET_INVALID_COLUMN
EXIT_FN_RET_INVALID_CONTEXT
EXIT_FN_RET_INVALID_PARAM
EXIT_FN_RET_OK