構文
#include "usrdecs.h" short result_code; table_metadata_def tbl_meta_rec; ERCALLBACK (GET_TABLE_METADATA, &tbl_meta_rec, &result_code);
バッファ
typedef struct
{
char *table_name;
short value_truncated;
long max_name_length;
long actual_name_length;
short num_columns;
short num_key_columns;
short *key_columns;
short num_keys_returned;
BOOL using_pseudo_key;
short source_or_target;
} table_metadata_def;
入力
table_nametable_name戻り値を受け付けるバッファへのポインタ。
key_columnskey_columns索引の配列へのポインタ。
max_name_length返される表名の最大長。通常、最大長は表名のバッファの長さです。返される表名はNULLで終了しているため、最大長は表名の最大長と同じになるはずです。
source_or_targetソースまたはターゲット表のどちらの名前を返すかを示す次の一方。
EXIT_FN_SOURCE_VAL EXIT_FN_TARGET_VAL
出力
table_name処理中のレコードに関連付けられている表の名前。ユーザー・イグジットの文字セッションが、SET_SESSION_CHARSETを使用して、オペレーティング・システムのデフォルトのキャラクタ・セット以外の値に設定されている場合、ucharset.hファイルのULIB_CS_DEFAULTで定義されているように、表名はセッションのキャラクタ・セットで解釈されます。
value_truncated値が切り捨てられたかどうかを示すフラグ(0または1)。切捨ては、表名とNULL終了文字を足した長さが、最大バッファ長を超えるときに行われます。
actual_name_length返される表名の文字列長。実際の長さにNULL終了文字は含まれません。
num_columns表内の列数。
num_key_columnsOracle GoldenGateに使用されているキー内の列数。
key_columnsキー列の値。キー数に列の長さを掛けた値を把握し、適切な量のバッファを割り当てる必要があります。
num_keys_returnedリクエストされているキー列の数。
using_pseudo_keyKEYCOLSで指定されている列がキーとして使用されているかどうかを示すフラグ。TRUEまたはFALSEを返します。