find
此函数根据索引值的精确匹配来搜索数据库。
查找方法基于索引值的精确匹配来搜索数据库。由于恰好只能返回一个对象,因此对象句柄的指针会被填充为所找到对象的引用。
MCO_RET classname_indexname_find(
/*IN*/ mco_trans_h trans,
/*IN*/ <type> [*]param1,
[/*IN*/ uint2 len1,],
[/*IN*/ <type> [*]param2,
[/*IN*/ uint2 len2,] …],
/*OUT*/ classname *handle
);
参数
trans
mco_trans_h
由 mco_trans_start()
函数返回的事务句柄。
param1
<type>
类型为 type
的变量,其中 type
是索引的 classname.fieldname
组件的数据类型。
如果索引组件为 char
或 string
,则 param
是一个 char *
。
len1
uint2
如果 param1
是字符或字符串,len1
指定输入缓冲区的长度。
param2
<type>
如果索引包含多个组成部分(即为复合索引),则需为索引的每个组成部分输入一个搜索值。
len2
uint2
如果 param2
至 paramN
是字符或字符串类型,则每个这样的参数后面都跟着一个 lenN
参数,用于指定 paramN
缓冲区的长度。
handle
classname
指向类名的指针,该类名将引用由 find
方法定位的对象。
返回
MCO_S_OK
成功定位目标。
MCO_S_NOTFOUND
搜索值与该类的任何对象都不匹配。
MCO_ERR_COMMON
常见错误。