IDBKeyRange按键查询,其中键为String

时间:2012-10-25 09:53:53

标签: javascript client-side indexeddb client-side-data

存储在IndexedDB中的对象的键是Array格式:

[int, String]

e.g。 [1, "Foo"][9, "Bar"]

如何使用密钥的字符串部分查询数据库?例如,我想用密钥[:any, "Some key"]获取所有记录。

看起来IDBKeyRange用于整数范围,但我找不到在密钥上构建任意查询的方法。

1 个答案:

答案 0 :(得分:4)

创建索引时,请确保将multiEntry设置为true,即:

objectStore.createIndex("tags","tags", {unique:false,multiEntry:true});

然后,您可以使用唯一的运算符获取范围 - 假设“标记”是您要查找的内容:

var rangeTest = IDBKeyRange.only(tag);

那应该为你做。我在这里有一个完整的博客文章:http://www.raymondcamden.com/index.cfm/2012/8/10/Searching-for-array-elements-in-IndexedDB