GET_BEFORE_AFTER_IND
有效对象
提取和复制
说明
使用 GET_BEFORE_AFTER_IND 函数可确定记录是数据库操作的前图像还是后图像。INSERT 位于映像之后,DELETE 位于映像之前,UPDATE 可以在映像之前或之后(请参见提取和复制参数 GETUPDATEBEFORES 和 GETUPDATEAFTERS)。如果正在提取 UPDATE 操作的之前映像,则同一更新中的之前映像将位于之后映像之前。
语法
#include "usrdecs.h"
short result_code;
record_def record;
ERCALLBACK (GET_BEFORE_AFTER_IND, &record, &result_code);
缓冲区
typedef struct
{
char *table_name;
char *buffer;
long length;
char before_after_ind;
short io_type;
short record_type;
short transaction_ind;
int64_t timestamp;
exit_ts_str io_datetime;
short mapped;
short source_or_target;
/* Version 2 CALLBACK_STRUCT_VERSION */
char requesting_before_after_ind;
} record_def;
输入
无
输出
<before_after_ind>
以下项之一,用于指示记录是图像之前还是之后。
BEFORE_IMAGE_VAL
AFTER_IMAGE_VAL
返回值
EXIT_FN_RET_INVALID_CONTEXT
EXIT_FN_RET_OK