码迷,mamicode.com
首页 > 移动开发 > 详细

android database 相关

时间:2014-08-02 05:14:02      阅读:164      评论:0      收藏:0      [点我收藏+]

标签:android   database   事务   源码   数据   

以前用database从来都是直接执行,db.execute()。


今天看公司1.0的源码中又学习了一个逻辑,

 SecureSQLiteDatabase db = null;

        try {

            db = mOpenHelper.openDatabase();


            db.beginTransaction();

            try {

                 todo 数据操作

                };

//db 所要执行的操作

                db.update(MstDataEntry.TABLE_NAME, values, whereClause, whereArgs);


                db.setTransactionSuccessful();

            } finally {

                db.endTransaction();

            }

        } finally {

            mOpenHelper.close();

        }


程序执行到endTransaction() 方法时会检查事务的标志是否为成功,

如果程序执行到endTransaction()之前调用了setTransactionSuccessful() 方法设置事务的标志为成功则提交事务,

如果没有调用setTransactionSuccessful() 方法则回滚事务。

这样就能使我们要执行的操作也就是事务被确定执行才返回,并关掉db。


android database 相关,布布扣,bubuko.com

android database 相关

标签:android   database   事务   源码   数据   

原文地址:http://blog.csdn.net/yiding_he/article/details/38344571

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!