Android数据库使用之事务-Transcation
2015-09-19 20:16
316 查看
一、背景:
前段时间开发一个项目,需要使用Android数据库做本地缓存,当时从服务断获取的数据有几千条,把数据插入到了数据库。如果不使用事务,需要较长时间才能完成,效率很低,因为每插入一条数据系统会默认commit一次,那就会循环几千次,大大的降低了用户体验。使用事务-Transcation是很有必要的。
二、概述:
事务是数据库操作的的重要组成部分,事务允许将多条数据库操作语句视为一个单元。一个事务需要保证以下两种情况之一才会发生:1.如果没有错误发生,所有的数据库语句都会被执行并且提交
2.如果在事务的任何一个执行点发生错误,整个事务都需要被回滚(rollback)
三、操作语句:
[code] 1.db.beginTransaction(); //循环之前开启事务 2.db.setTransactionSuccessful(); //循环结束后调用 3.db.endTransaction();//最后释放事务
四、具体代码:
下面贴出代码模版:[code] /** * 插入这个数值 * * @param postbe_functionId * @param postbe_uniqueId */ public void insertValue(String postbe_functionId, String postbe_uniqueId) { db.beginTransaction(); try { sql = "insert into postbe_tab (postbe_functionId,postbe_uniqueId) values ('" + postbe_functionId + "','" + postbe_uniqueId + "')"; db.execSQL(sql); db.setTransactionSuccessful(); // 设置事务处理成功, } catch (Exception e) { e.printStackTrace(); } finally { db.endTransaction(); // 处理完成 } }
五、总结:
使用数据库事务就是为了提高效率,保证多次写操作同时成功,提高了效率。举个例子。我们执行了n次写的操作,如果有一次写的操作失败,那么n次写操作都不会被提交到数据库中。相关文章推荐
- Android 自定义View修炼-打造完美的自定义侧滑菜单/侧滑View控件(转)
- Android组件事件监听大全
- Android手机卫士总结
- android利用BitMap获得图片的像素数据
- android studio 打包jar
- Android View和ViewGroup
- Android View和ViewGroup
- Android View和ViewGroup
- 我是如何自学android,资料分享2015版
- Android中常见Intent习惯用法-上篇(附源码下载)
- android之动画(透明度,位移,旋转,缩放)
- 【Android小游戏】安卓小游戏开发(直播手把手教学系列一)
- Android动画操作
- Android多线程机制之Handler
- Android高级控件小练习
- Android系统属性System Property
- Parcelable和Serializable的区别
- android-自定义TextView
- Android----异步加载
- Android基础入门教程——2.4.2 ListView简单使用