mco_uda_cursor
MCO_RET mco_uda_cursor( /*IN*/ mco_trans_h t,
/*IN*/ unsigned short struct_no,
/*IN*/ unsigned short index_no,
/*OUT*/ mco_cursor_t * cursor );
| |
---|
t | 事务处理 |
struct_no | 结构/类编号(必须介于 0 和 - 1 之间)mco_dict_struct_count() |
index_no | 索引号(必须介于 0 和 - 1 之间)struct_info.index_count |
cursor | 用于接收游标句柄的结构变量的地址mco_cursor_t |
根据通过其 number 指定的索引初始化游标 。index_no
| |
---|
MCO_S_OK | 已成功返回游标 |
MCO_E_UDA_STRUCT_NOTFOUND | 无效struct_no |
MCO_E_UDA_STRUCT_NOT_CLASS | 无效struct_no(不是类) |
MCO_E_UDA_INDEX_NOTFOUND | 无效index_no |
/* 应用程序代码片段 */
int main(int argc, char** argv)
{
MCO_RET rc;
mco_db_h db;
mco_trans_h t;
mco_cursor_t cursor;
unsigned short struct_no = 1;
unsigned short index_no = 5;
...
rc = mco_trans_start(db, MCO_READ_ONLY, MCO_TRANS_FOREGROUND, &t);
if ( MCO_S_OK == rc )
{
rc = mco_uda_cursor(t, struct_no, index_no, &cursor);
for ( ; rc == MCO_S_OK; rc = mco_cursor_next(t, &cursor))
{
mco_uda_object_handle_t obj;
/* get object handle */
mco_uda_from_cursor(t, &cursor, &obj);
...
}
rc = mco_trans_rollback(t);
}
}