2011-03-05 63 views
0

我是新的android开发人员,首先感谢所有帮助我的每一天的答案。 我的问题是: 我想要使用一个SQLite有一个数据库与千行,但插入这需要平均每行一秒:它太慢了; 我的数据库必须每天更新,所以我想压缩此数据库,下载到我的应用程序(资产或原料)的文件夹 中。 Android SDK允许这个?我看了很多答案,但我什么也没找到。 感谢所有。 (原谅我的英语)sqlite:下载数据库

回答

1

解决您的问题的方法是use transactions。您向SQLite说"BEGIN TRANSACTION",然后运行您的所有INSERT,然后说"COMMIT TRANSACTION"。这要快得多,因为除非已经开始事务,否则SQLite会在单独的事务中运行每个查询(所谓的自动提交),并且对每个INSERT执行内部处理都非常缓慢。

0

不知道android部分,但插入取1s是不正常的。如果要插入大量的行,请在事务中执行。

begin transaction; 
insert into mytable values (...); 
.... 
commit; 

这将不仅仅是做一次插件的速度更快

+0

非常感谢,我要测试这个! – 2011-03-05 15:52:59