構文
#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_name
table_name
戻り値を受け付けるバッファへのポインタ。
key_columns
key_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_columns
Oracle GoldenGateに使用されているキー内の列数。
key_columns
キー列の値。キー数に列の長さを掛けた値を把握し、適切な量のバッファを割り当てる必要があります。
num_keys_returned
リクエストされているキー列の数。
using_pseudo_key
KEYCOLS
で指定されている列がキーとして使用されているかどうかを示すフラグ。TRUE
またはFALSE
を返します。