在ipad应用程序中使用sqlite自动完成

时间:2012-02-24 07:16:26

标签: iphone objective-c sql ios sqlite

我想在ipad应用中使用自动完成功能。我有一个sqlite数据库的单词。在搜索框中键入字母时,我在UItableview中加载关键字。我使用了以下选择查询

SELECT word from tbl_words where words like a%

当我有几百个字时,每件事情都很好。但是当我的数据库增长到数千个单词时,响应很慢。因此,只有在输入3个字母后才能激活自动完成功能。这给了很少的单词但它很慢。

我在这个SQLite_optimization_FAQ中研究了sqlite优化技术。它建议避免像%使用索引。

我知道我可以使用

为列创建索引
CREATE INDEX tbl_words ON mytest(words);

我还能做些什么来改善表现吗?任何帮助将不胜感激

1 个答案:

答案 0 :(得分:2)

不是每次都访问数据库,而是将所有值加载到数组中并搜索数组。这将改善性能。