现在位置 >首页 > sqlite
0℃
2012年08月29日 Android, 操作系统 ⁄ 被围观 2,443 次+
应用程序初始化时需要批量的向sqlite中插入大量数据,单独的使用for+Insert方法导致应用响应缓慢,因为 sqlite插入数据的时候默认一条语句就是一个事务,有多少条数据就有多少次磁盘操作。我的应用初始5000条记录也就是要5000次读写磁盘操作。 而且不能保证所有数据都能同时插入。(有可能部分插入成功,另外一部分失败,后续还得删除。太麻烦) 解决方法: 添加事务处理,把5000条插入作为一个事务   我们使用SQLite的事务进行控制: db.beginTransaction();  //手动设置开始事务 try{ //批量处理操作 for(Co...
阅读全文

Wopus问答

0℃
2012年08月29日 数据库 ⁄ 被围观 1,790 次+
事务 事务定义了一组SQL命令的边界,这组命令或者作为一个整体被全部执行,或者都不执行。事务的典型实例是转帐。 事务的范围 事务由3个命令控制:BEGIN、COMMIT和ROLLBACK。BEGIN开始一个事务,之后的所有操作都可以取消。COMMIT使BEGIN后的所有命令得到确认;而ROLLBACK还原BEGIN之后的所有操作。如: sqlite> BEGIN; sqlite> DELETE FROM foods; sqlite> ROLLBACK; sqlite> SELECT COUNT(*) FROM foods; COUNT(*) 412 上面开始了一个事务,先删除了foods表的所有行,但是又用ROLLBACK进行了回卷。...
阅读全文
×
腾讯微博