GET_BASE_OBJECT_NAME_ONLY
Gültig für
Extrakt und Replicat
Beschreibung
Verwenden Sie die Funktion GET_BASE_OBJECT_NAME_ONLY, um den nicht qualifizierten Namen (ohne Katalog, Container oder Schema) des Basisobjekts einer Quelle oder eines Zielobjekts abzurufen, die mit dem verarbeiteten Datensatz verknüpft ist. Diese Funktion ist für Tabellen und andere Objekte in einem DDL-Vorgang gültig.
Informationen zum Zurückgeben des vollqualifizierten Namens eines Basisobjekts finden Sie unter:
So geben Sie nur das Schema des Basisobjekts zurück:
Datenbankobjektnamen werden genau so zurückgegeben, wie sie in der Hostdatenbank definiert sind, einschließlich der Groß-/Kleinschreibung.
Syntax
#include "usrdecs.h"
short result_code;
env_value_def env_value;
ERCALLBACK (GET_BASE_OBJECT_NAME_ONLY, &env_value, &result_code);
Puffer
typedef struct
{
char *buffer;
long max_length;
long actual_length;
short value_truncated;
short index;
short source_or_target;
} env_value_def;
Eingabe
<buffer>
Ein Zeiger auf einen Puffer, um den zurückgegebenen Objektnamen zu akzeptieren. Der Name ist Null-beendet.
<max_length>
Die maximale Länge des zugewiesenen Puffers, um den Objektnamen zu akzeptieren. Dies wird als beendete NULL-Zeichenfolge zurückgegeben.
<source_or_target>
Eine der folgenden Optionen gibt an, ob der Quell- oder Zielobjektname zurückgegeben werden soll.
EXIT_FN_SOURCE_VAL
EXIT_FN_TARGET_VAL
Ausgabe
<buffer>
Der vollqualifizierte, nullbeendete Objektname, z.B. schema.object oder catalog.schema.object, je nach Datenbankplattform.
Wenn die Zeichensession des User Exit mit SET_SESSION_CHARSET auf einen anderen Wert als den Standardzeichensatz des Betriebssystems gesetzt wird, wie in ULIB_CS_DEFAULT in der Datei ucharset.h definiert, wird der Objektname im Sessionzeichensatz interpretiert.
Istlänge
Die Zeichenfolgenlänge des zurückgegebenen Objektnamens. Die tatsächliche Länge enthält nicht den Null-Terminator. Die tatsächliche Länge ist 0, wenn das Objekt eine Tabelle ist.
<value_truncated>
Ein Flag (0 oder 1), das angibt, ob der Wert abgeschnitten wurde. Eine Abkürzung tritt auf, wenn die Länge des Objektnamens plus Null-Terminator die maximale Pufferlänge überschreitet.
Rückgabewerte
EXIT_FN_RET_INVALID_COLUMN
EXIT_FN_RET_INVALID_CONTEXT
EXIT_FN_RET_INVALID_PARAM
EXIT_FN_RET_OK