GET_SCHEMA_NAME_ONLY
Gültig für
Extrakt und Replicat
Beschreibung
Verwenden Sie die Funktion GET_SCHEMA_NAME_ONLY, um den Namen des Eigentümers (z.B. Schema) abzurufen, jedoch nicht den Namen des Katalogs oder Containers (falls zutreffend) oder des Objekts des Quell- oder Zielobjekts, das mit dem verarbeiteten Datensatz verknüpft ist. Diese Funktion ist für die Vorgänge DML und DDL gültig.
Um den vollqualifizierten Namen einer Tabelle zurückzugeben, gehen Sie wie folgt vor:
So geben Sie den vollqualifizierten Namen eines Nicht-Tabellenobjekts zurück, wie z.B. ein Benutzer, eine Ansicht oder <index>:
So geben Sie nur den nicht qualifizierten Tabellen- oder Objektnamen zurück:
Informationen zum Zurückgeben anderer Teile des Tabellen- oder Objektnamens finden Sie in den folgenden Abschnitten:
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_SCHEMA_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 Schemanamen zu akzeptieren. Der Name ist Null-beendet.
<max_length>
Die maximale Länge des zugewiesenen Puffers, um den Schemanamen zu akzeptieren. Dies wird als beendete NULL-Zeichenfolge zurückgegeben.
<source_or_target>
Eine der folgenden Optionen gibt an, ob der Quell- oder Zielschemaname zurückgegeben werden soll.
EXIT_FN_SOURCE_VAL
EXIT_FN_TARGET_VAL
Ausgabe
<buffer>
Der vollqualifizierte, mit Null beendete Schemaname.
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 Schemaname im Sessionzeichensatz interpretiert.
<actual_length>
Die Zeichenfolgenlänge des zurückgegebenen Namens. Die tatsächliche Länge enthält nicht den Null-Terminator.
<value_truncated>
Ein Flag (0 oder 1), das angibt, ob der Wert abgeschnitten wurde. Eine Abkürzung tritt auf, wenn die Länge des Schemanamens 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