compare
此函数将索引游标当前所在位置所引用的值与应用程序提供的值进行比较。
它可用于影响基于范围的检索。此函数仅针对树形索引生成,而不针对哈希索引生成。
MCO_RET classname_indexname_compare(
/*IN*/ mco_trans_h trans,
/*IN*/ mco_cursor_h cursor,
/*IN*/ [const] <type> [*]param1,
[[/*IN*/ uint2 len1,]
[/*IN*/ [const] <type> [*]param2,
[/*IN*/ uint2 len2,] …],
/*OUT*/ int *result
);
参数
trans
mco_trans_h
由 mco_trans_start()
函数返回的事务句柄。
cursor
mco_cursor_h
由 classname_indexname_index_cursor()
创建的游标句柄。
param1
<type>
类型为 type
的变量,其中 type
是索引的 classname.fieldname
组件的数据类型。
如果索引组件为 char
或 string
,则 param
是一个 char *
。
len1
uint2
如果 param1
是字符或字符串,len1
指定输入缓冲区的长度。
param2
<type>
如果索引包含多个组成部分(即为复合索引),则需为索引的每个组成部分输入一个搜索值。
len2
uint2
如果 param2
至 paramN
是字符或字符串类型,则每个这样的参数后面都跟着一个 lenN
参数,用于指定 paramN
缓冲区的长度。
result
int
指向一个整数的指针,如果比较的值相等则为零;如果由游标引用的对象中存储的值小于传入的值,则为负数;如果由游标引用的对象中存储的值大于传入的值,则为正数。
返回码
MCO_S_OK
成功。
MCO_E_VOLUNTARY_NOT_EXIST
索引名称是一个自愿创建的索引,尚未被创建。
MCO_E_CURSOR_INVALID
游标无效。