2013-04-11 66 views
1

我已经构建了一个使用sqlite3 fts3虚拟表的android字典应用程序。我希望能够使用fts3 snippet函数执行搜索,如下所示:在android字典应用中使用sqlite3 fts3片段功能

SELECT语句(my_dictionary)FROM my_dictionary WHERE my_dictionary MATCH query_string;

我不能得到这样的搜索与Android上的sqlite3执行 - 我得到的错误消息有关我通过sqlite在我的光标的列数。我试图通过使用rawQuery执行此搜索,即明确写出查询;并通过将游标查询的'String []列'变量分配给'snippet(my_dictionary)'。

所以我的问题是:必须android上的sqlite光标包含所有列才能正确执行(很确定答案是'是')?有没有人有过一个fts3 snippet()搜索在android上正常工作?如果是这样,你怎么做到的?

感谢您对这个相当晦涩的问题的任何帮助。

+0

什么是确切的错误信息? – 2013-04-12 11:15:38

+0

04-12 09:25:51.383:E/CursorWindow(406):字段时隙0,3的错误请求。 numRows = 24,numColumns = 1 04-12 09:25:51.404:E/AndroidRuntime(406):java.lang.IllegalStateException:从第0行获取字段插槽第3行失败 – user2271541 2013-04-12 14:27:22

+0

上面的蹩脚格式道歉^^^ – user2271541 2013-04-12 14:33:35

回答

0

更新 - 好吧,我已经得到了这个工作。这个错误的直接原因是我没有改变我的代码操作/格式化光标内容的方式出门到我的列表视图适配器。我正在发送一个专栏,而期待几个。咄。

因此,如果有人真的想知道,你可以CAN实际上使用fts3 snippet函数与android sqlite。是的,标准的sqlite3语法工作得很好。不管它对于显示搜索结果是否有用都是另一回事。