GET_OBJECT_NAME_ONLY

Válido Para

Extract e Replicat

Descrição

Use a função GET_OBJECT_NAME_ONLY para recuperar o nome não qualificado (sem o catálogo, o contêiner ou o esquema) 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 DML ou DDL.

Para retornar o nome totalmente qualificado de um objeto, consulte o seguinte:

GET_OBJECT_NAME

Para retornar outras partes do nome do objeto, consulte o seguinte:

GET_SCHEMA_NAME_ONLY GET_CATALOG_NAME_ONLY

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_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 para 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