mco_uda_bitmap_get_fld
MCO_RET mco_uda_bitmap_get_fld( /*IN*/ mco_uda_object_handle_t * obj,
/*OUT*/ uint2 * index,
/*OUT*/ unsigned short * field_no);
| |
---|
obj | UDA 对象的句柄 |
index | 用于接收更新字段中位置的无符号 2 字节整数的地址 |
field_no | 用于接收更新的字段编号的 unsigned short 的地址 |
此函数在传递的对象中搜索声明的字段,如果找到,则返回更新字段的字段编号和位置。(请注意,如果此类的架构定义声明了字段,则当此数据库对象中任何其他字段的值发生更改时,运行时将自动设置此字段中的相应位。开发人员有责任在需要此功能的任何类中包含 field。bool updated_bitmap[]``bool updated_bitmap[]``bool updated_bitmap[]
| |
---|
MCO_S_OK | 更新的位图字段和找到的位置 |
MCO_E_UDA_FIELD_NOTFOUND | 未找到更新的位图字段 |
MCO_S_NOTFOUND | 更新了位图字段,但找不到字段中的位置 |
/* 应用程序代码片段 */
int main(int argc, char* argv[])
{
MCO_RET rc;
mco_db_h db;
mco_metadict_header_t * metadict;
mco_trans_h t;
mco_cursor_t csr;
mco_uda_object_handle_t rec;
unsigned short index_no = 0;
unsigned short field_no;
...
rc = mco_trans_start(db, MCO_READ_WRITE, MCO_TRANS_FOREGROUND, &t);
if ( MCO_S_OK == rc)
{
...
rc = mco_uda_cursor(t, rec_struct_no, index_no, &csr);
rc = mco_cursor_first(t, &csr);
rc = mco_uda_from_cursor(t, &csr, &rec); /* Get object handle from cursor */
/* display all updated fields */
while ((rc=mco_uda_updated_bitmap_get_fld(rec, &index, &field_no)) != MCO_S_NOTFOUND)
{
mco_dict_field_info_t field_info;
mco_dict_field(metadict, 0, rec->struct_no, field_no, &field_info);
printf("\nField %s (number %d) was updated\n", field_info.name, field_no);
...
}
}
...
}