sql >> Database teknologi >  >> RDS >> SQLite

SQLite Database giver advarsel automatisk indeks på (kolonne) Efter opgradering af Android L

Automatisk indeksering blev introduceret i sqlite 3.7.17. En version af sqlite med denne funktion var kun inkluderet i forhåndsvisning af Android L-udviklere. Det er derfor, du kun får beskeden på Lollipop, men ikke tidligere. Selvom det er logget som en fejl, er det egentlig bare en besked.

Grundlæggende kommer den automatiske indeksering i spil, når du laver opslag på ikke-indekserede kolonner. sqlite antager, at der er så mange data, at generering af et midlertidigt indeks er billigere end rå opslag.

Overvej at tilføje eksplicitte, permanente indekser til dine opslagskolonner med CREATE INDEX . For eksempel efter din CREATE TABLE :

CREATE INDEX indexname ON tablename(columnname);

hvor du kan vælge tablename(columnname) fra autoindex-meddelelserne som produceret af sqlite.

Hvis du bare vil have den gamle adfærd tilbage, kan du deaktivere automatisk indeksering med

PRAGMA automatic_index=off;


  1. Hvornår kører SQLiteOpenHelper onCreate() / onUpgrade()?

  2. PostgreSQL-kolonnen 'foo' eksisterer ikke

  3. Sådan bruges OBJECT_ID() på krydsdatabaseobjekter i SQL Server

  4. Forbinder postgresql med sqlalchemy