public void payment() { SQLiteDatabase db = dbOpenHelper.getReadableDatabase(); db.beginTransaction();//开始事务 try { db.execSQL("update person set amount=amount-10 where personid=2"); db.execSQL("update person set amount=amount+10 where personid=5"); db.setTransactionSuccessful();// 设置事务的标志为true,调用此方法会在执行到endTransaction()方法是提交事务,若没有调用此方法会在执行到endTransaction()方法回滚事务。 } catch (SQLException e) { } finally { db.endTransaction(); } // 结束事务,有两种情况:commit,rollback, // 事务的提交或回滚是由事务的标志决定的,如果事务的标志为true就会提交,否则回滚,默认情况下事务的标志为false }