android中对sql语句进行了两种封装。本质上都是封装了sql语句,都需要通过SQLiteDtabase类使用其实例方法.
NO.1
- insert方法: 向数据库添加一条记录
- delete方法:向数据库删除一条记录
- update方法:更新数据库的一条记录
- query方法: 查询数据库(返回的是游标,记得关闭和释放)
NO.2
使用SQLiteDatabase的execSQL方法,将sql语句和对应的数组(对应sql语句的占位符)作为参数传入.
注意:查询是使用SQLiteDatabase的rawQuery方法.
事务的特性可以保证让某一系列的操作要么全部完成要么一个都不会完成
也是通过SQLiteDatase的方法来申明此代码段是事务。
使用场景:银行账户的转账工作要分两步完成,如果a像b转账,首先a账户做减法,然后在b账户做加法,这两个步骤要么全部完成要么都不做,否则会出错,所以应该写进事务里面.
- beginTransaction方法:表明事务开始
- setTransactionSuccessful方法:表明事务执行成功
- endTransaction方法:表明事务结束
【延伸思考】事务是怎么保证一系列操作要么全部完成要么一个都不完成的?