индексация базы данных Android - PullRequest
3 голосов
/ 19 мая 2011

Моему приложению для Android необходим частый доступ к базе данных sqlite. Я думал, есть ли способ индексировать базу данных, чтобы иметь более быстрый доступ к данным. Кто-нибудь делал индексацию базы в андроиде? Пожалуйста, предложите мне лучший способ сделать это?

Действительно ли это необходимо, поскольку у нас есть все базы данных на локальном устройстве, и даже выполнение запросов каждый раз не займет много времени.

Rgds, Sapan

1 Ответ

6 голосов
/ 19 мая 2011

SQLite поддерживает оператор CREATE INDEX:

http://www.sqlite.org/lang_createindex.html

, например:

create index foo_bar_idx on foo(bar);

Для подробного обсуждения, когда планировщик запросов решит:используйте индекс, попробуйте вместо этого документацию PostgreSQL:

http://www.postgresql.org/docs/9.0/static/indexes.html

Это не будет работать точно так же в SQLite, но общие идеи такие же:

  • Для крошечных таблиц чтение всей таблицы происходит быстрее, чем сканирование по индексу.
  • Для порядка по / лимиту создайте индекс для полей, используемых в сортировке.
  • Для соединения / где требуется индекс для полей, которые используются в соединении / где.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...