我必须搜索26024个条目并计数的数据库。它曾经是快速的,记录较少,但现在花了10秒钟,并减慢了应用程序。我想知道我是否能得到关于如何加快这个过程或者我做错什么的建议。这是代码。
while (cursor.moveToNext()) {
String word = cursor.getString(0);
if (word.equals(input)) {
String nikus = cursor.getString(1);
String def = cursor.getString(2);
ret.append(" " + nikus + "\n"+ def + "\n");
g = null;
}
编辑: 在我的数据库中,我有一个定义表,在表中有3个字段,一个是要比较的字,sencond是完整的字,第三个是定义本身。希望这可以帮助你们多一点。
CREATE TABLE [definitions] (
[word] TEXT,
[fullword] TEXT,
[definition] TEXT);
编辑:这是我得到的错误 01-04 00:47:54.678:E / CursorWindow(4722):需要增长:mSize = 1048576,size = 17,freeSpace()= 13,numRows = 15340
答案 0 :(得分:0)
laalto上面的评论是正确的。你应该运行一个带有where子句的select,它只返回word等于输入的行(不要忘记区分大小写。)word列上的索引将有助于查询更快。