簡體   English   中英

簡單的SQLite select語句需要2秒鍾以上

[英]Simple select statement of SQLite takes more than 2 seconds

我已將表索引為“ CREATE INDEX Items_idx ON Items(Itemcode,Barcode);” 並在那里插入了40萬條線路。 如何加快選擇和返回數據的速度?

  public static Item instanceFromDBBarcode(SQLiteDatabase db, String  itemBarcode) {

    String[] args = {itemBarcode};
    String sql  ="SELECT * FROM Items WHERE "+BARCODE+"=?;
    Cursor reader = db.rawQuery(sql, args);
    if (reader.moveToNext()) {
        Item i = readCurrentItem(reader);
        reader.close();
        return i;
    }
    reader.close();
    return null;
}

對於400條記錄,您的問題將不在於是否為列建立索引。 對於現代數據庫而言,連續掃描400條記錄將是微不足道的。
我相信您的索引並沒有達到您的預期。 索引(項目代碼,條形碼)僅對條形碼進行查詢時不起作用,您應該僅對條形碼創建索引。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM