Автоматичното индексиране беше въведено в sqlite 3.7.17. Версия на sqlite с тази функция беше включена само в визуализацията за разработчици на Android L. Ето защо получавате съобщението само на Lollipop, но не по-рано. Дори и да се регистрира като грешка, това наистина е просто съобщение.
По принцип автоматичното индексиране влиза в игра, когато правите справки в неиндексирани колони. sqlite предполага, че има толкова много данни, че генерирането на временен индекс е по-евтино от необработеното търсене.
Помислете за добавяне на изрични, постоянни индекси за вашите колони за справка с CREATE INDEX
. Например след вашия CREATE TABLE
:
CREATE INDEX indexname ON tablename(columnname);
където можете да изберете tablename(columnname)
от съобщенията за автоматично индексиране, произведени от sqlite.
Ако просто искате старото поведение обратно, можете да деактивирате автоматичното индексиране с
PRAGMA automatic_index=off;