Cursor.search
此方法通过键值应用操作 op 来定位指定索引 idx 中对象的位置。如果未找到,则返回对象实例或 None。
Cursor.search(cls, idx, op, value)
参数
cls
要搜索的类
idx
用于搜索的索引名称
op
要执行的比较操作;以下之一(其中一些仅适用于 R 树或帕特里夏树索引):小于、小于等于、等于、大于等于、大于、重叠、包含、精确匹配、最佳匹配、前缀匹配、下一个匹配、邻域、严格等于、是前缀
value
要查找的值(如果索引是复合索引,则将索引组件的所有值作为元组传递)
返回
Object
指定类别的对象(如果搜索成功的话)。
无
未找到与指定值相对应的对象。
示例
#
# Search operation
#
conn.startTransaction(exdb.Transaction.MCO_READ_ONLY)
cursor = conn.cursor()
ret = cursor.search("Record", "by_i4", exdb.Operation.GreaterOrEquals, 2)
if ret:
rec = cursor.next()
print "Object found: i4=%s,str=%s" % (rec.i4, rec.str)
rec = cursor.next()
print "Next object is: i4=%s,str=%s" % (rec.i4, rec.str)
else:
print "Object not found"
print ""
cursor.close()
conn.commit()