Android Полнотекстовый поиск и ListAdapter

У меня уже есть приложение, которое использует базу данных SQLite и listadapter. Я пытаюсь обновить свое приложение, чтобы использовать возможности полнотекстового поиска, но изо всех сил пытаюсь найти ответ на проблему. По сути, когда я создаю виртуальную таблицу с необходимым столбцом _id, база данных преобразует ее в текстовое поле, и она больше не является первичным ключом автоинкремента. Как бы я мог использовать возможности FTS3 с listadapter?

1 ответ

Решение

При использовании FTS3 sqlite игнорирует типы данных и ограничения. Таким образом, все столбцы создаются как текст. Вместо столбца _ID он создает документ, также известный как rowid. Чтобы адаптеры хорошо играли с этим идентификатором, нужно присвоить ему псевдоним _id.

Проверьте раздел 1.2 документации Sqlite FTS. http://www.sqlite.org/fts3.html

Также посмотрите в SearchableDictionary для образца псевдонима.

Другие вопросы по тегам