您当前的位置: 首页 > 学无止境 > 心得笔记 网站首页心得笔记
27_sqlite中使用事务
发布时间:2021-02-18 16:22:29编辑:雪饮阅读()
sqlite也玩事务,不过从语法上来看,它这个事务操作,个人感觉哈,是没有mysql好的
/**
* 银行转账的方法
*/
public void transaction() {
SQLiteDatabase db = dbOpenHelper.getWritableDatabase();
if (db.isOpen()) {
try {
// 开启数据库的事务
db.beginTransaction();
// 给张三设置1000块钱的账户
db.execSQL("update person set account=? where name=?",
new Object[] { 1000, "zhangsan98" });
// 把张三的账户扣除200块钱
db.execSQL("update person set account=account-? where name=?",
new Object[] { 200, "zhangsan98" });
// 把张三的钱给李四
//初始化李四账户 为 0
db.execSQL("update person set account=? where name=?",
new Object[] { 0, "lisi98" });
db.execSQL("update person set account=account+? where name=?",
new Object[] { 200, "lisi98" });
//setTransactionSuccessful与endTransaction的结合才是事务的成功提交
db.setTransactionSuccessful();
}
// 显示的设置事务是否成功
catch (Exception e) {
// TODO: handle exception
} finally {
//当前事务块结束的声明
db.endTransaction();
db.close();
}
}
}
然后经过测试可以看到,这是没有问题的
关键字词:sqlite,事务
下一篇:28_初次使用listview