GET_TABLE_NAME_ONLY

Válido Para

Extract e Replicat

Descrição

Use a função GET_TABLE_NAME_ONLY para recuperar o nome não qualificado (sem o catálogo, o contêiner ou o esquema) da tabela de origem ou de destino associada ao registro que está sendo processado. Essa função só é válida para tabelas em operações DML e DDL. Para recuperar o nome não qualificado de um objeto que não seja de tabela, consulte o seguinte:

GET_OBJECT_NAME_ONLY

Para retornar o nome totalmente qualificado de uma tabela, consulte o seguinte:

GET_TABLE_NAME

Para retornar outras partes do nome da tabela, consulte:

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.

Esta função retorna um valor somente se o objeto for uma tabela. Caso contrário, o actual_length da variável env_value_def retornará 0.

Sintaxe

#include "usrdecs.h"
short result_code;
env_value_def env_value;
ERCALLBACK (GET_TABLE_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>

Ponteiro para um buffer a fim de aceitar o nome da tabela retornada. O nome da mesa é nulo-encerrado.

<max_length>

O tamanho máximo do buffer alocado para aceitar o nome da tabela. Isso é retornado como uma string encerrada NULL.

<source_or_target>

Uma das opções a seguir indica se o nome da tabela de origem ou de destino deve ser retornado.

EXIT_FN_SOURCE_VAL
EXIT_FN_TARGET_VAL

Saída

<buffer>

O nome da tabela totalmente qualificado e terminado com nulo, por exemplo, schema.table ou catalog.schema.table, 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 da tabela será interpretado no conjunto de caracteres da sessão.

tamanho real

O tamanho da string do nome da tabela retornada. O tamanho real não inclui o terminador nulo. O tamanho real retornado será 0 se o objeto for diferente de 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 da tabela 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