千家信息网

Android中怎么优化Sqlite数据查询性能

发表于:2024-11-27 作者:千家信息网编辑
千家信息网最后更新 2024年11月27日,这期内容当中小编将会给大家带来有关Android中怎么优化Sqlite数据查询性能,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。(1)编译SQL语句(重复的插入操作
千家信息网最后更新 2024年11月27日Android中怎么优化Sqlite数据查询性能

这期内容当中小编将会给大家带来有关Android中怎么优化Sqlite数据查询性能,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

(1)编译SQL语句(重复的插入操作使用SQLiteStatement)

(2)显示使用事务(做数据库更新修改操作时用事物能够提高大概8位的速度)


(3)建立索引(这个我觉得没必要说了,所有数据库查询时索引都会有帮助)

(4)查询数据优化(少用cursor.getColumnIndex,这个是今天我们这篇说的测试)

(5)ContentValues的容量调整(ContentValues的初始容量是8,如果当添加的数据超过8之前,则会进行双倍扩容操作,因此建议对ContentValues填入的内容进行估量)

(6)及时关闭Cursor(这个没什么可说的,写代码的时候应该养成习惯)

(7)耗时异步化(大数据量操作时最好用异步处理)

关于cursor.getColumnIndex的测试

今天我们就专门来测试一下getColumnIndex的速度问题

查询一条数据

上图为自己的程序里面原先的查询一条信息的数据,调用到经过测试,输出的时间为43毫秒

然后我们新写了一个方法,把显示列前面定义出来,然后直接取列的序号

再用新的方法调用了一下,看到结果,我测了两次,分别是42和43,也就是说基本没有什么变化。


查询多条数据(2W6左右)

这次我们再找出来另一个获取所有资料的方法,本地Sqlite数据库里有2W6的数据量,我们先看一下用了getcolumnindex的代码

然后我们执行一下看到用时为11366

接下来我们再写一个去掉getcolumnindex的方法

执行这个后的用时为11168,比原来的能节省了一些,还是有些帮助的。

上述就是小编为大家分享的Android中怎么优化Sqlite数据查询性能了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。

0