Получение такого модуля: ошибка fts в короне с sqlite
Я пытаюсь выполнить запрос на сопоставление базы данных sqlite из приложения Corona. Я скомпилировал базу данных sqlite из исходных файлов, используя cl.exe, и когда я скомпилировал, я включил флаги, чтобы включить функции fts. Затем я создал виртуальную таблицу в базе данных, используя fts3 (я также пытался отдельно с fts4). Я могу выполнить запрос на совпадение из утилиты командной строки sqlite, и он возвращает правильные результаты.
Тем не менее, когда я пытаюсь выполнить тот же запрос к тому же файлу базы данных из моего приложения Corona, я получаю сообщение об ошибке "нет такого модуля: fts3" (я получил "нет такого модуля: fts4", когда я пытался с fts4). Другие запросы (не использующие полнотекстовый поиск) отлично работают из короны.
Может кто-нибудь сказать мне, почему я получаю эту ошибку при полнотекстовом поиске в моем приложении Corona? Документация sqlite подразумевает, что эта ошибка означает, что сборка sqlite не включает модули FTS. Но я думаю, что скомпилировал это правильно, потому что мои операторы SQL для создания таблицы FTS3 успешно (вне короны) и полнотекстовый запрос также работает вне короны.
Нужно ли устанавливать что-то по-другому в настройках сборки моей короны или что-то еще?
Я использую симулятор короны в Windows, но я также попробовал его на своем устройстве.
Вот вывод из adb logcat с моего устройства:
I/Corona (15353): Runtime error
I/Corona (15353): no such module: fts3
I/Corona (15353): stack traceback:
I/Corona (15353): [C]: ?
I/Corona (15353): [C]: in function 'nrows'
I/Corona (15353): ...t\Documents\Corona Projects\aw\scene_search.lua:162: in function 'fillMyTable'
I/Corona (15353): ...t\Documents\Corona Projects\aw\scene_search.lua:56: in function <...t\Documents\Corona Projects\aw\scene_search.lua:49>
I/Corona (15353): ?: in function <?:218>
1 ответ
Я также разместил этот вопрос на форумах Corona, и сотрудники Corona подтвердили, что они используют стандартную сборку s qlite для Android, и она не включает поддержку полнотекстового поиска. Стандартная сборка на iOS включает поддержку fts, поэтому она работает и на iOS.
Смотрите: http://forums.coronalabs.com/topic/55683-is-coronas-s qlite-compiled-with-fts3-full-text-search-enabled/