【问题标题】:Android Sqlite taking more time on query execution for first timeAndroid Sqlite 第一次在查询执行上花费更多时间
【发布时间】:2020-10-05 08:41:08
【问题描述】:

我在我的 android 应用程序中使用 sqlite,我的应用程序中有一个巨大的数据库。我有一个包含 300K 条目和索引列的表。

查询SELECT SOME_COLUMN FROM TEST_TABLE WHERE SOME_COLUMN = 'some_text' ORDER BY SOME_COLUMN DESC

自从应用程序安装到移动设备后第一次遇到上述查询时,大约需要 7-9 秒

每次连续调用数据库后,我都会得到大约 200 - 250 毫秒。 即使我尝试重新启动应用程序,它也会给我同样的 200 - 250 毫秒

为什么会有很大的不同,里面使用的任何缓存机制,如果是的话,缓存会工作多长时间?
谁能解释一下。

【问题讨论】:

标签: android sqlite android-sqlite


【解决方案1】:

您可以尝试的优化是为您正在查询的列创建一个index

CREATE INDEX index_name ON table_name(column_list);

如果是安装后第一次出现,可能是系统第一次加载应用缓存造成的。

【讨论】:

    猜你喜欢
    • 2021-02-11
    • 2018-01-10
    • 2017-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-01
    相关资源
    最近更新 更多