Button replaceData = (Button) findViewById(R.id.replace_data);
replaceData.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
SQLiteDatabase db = dbHelper.getWritableDatabase();
db.beginTransaction();//开启事务
try{
db.delete("Book",null,null);
// if(true){//手动抛出一个异常
// throw new NullPointerException();
// }
ContentValues values =new ContentValues();
values.put("name","The Da Vinci Code22");
values.put("author","Dan Brown221");
values.put("pages","411");
values.put("price","16.53");
db.insert("Book" , null , values);
db.setTransactionSuccessful();//事务成功执行
}catch (Exception e){
e.printStackTrace();
}finally {
db.endTransaction();//结束事务
}
}
});
总结:事务的特性可以保证让一系列的操作要买完成要不一个都不会完成。