首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

Android数据存储之SQLite(2)

2013-12-02 
Android数据存储之SQLite(二)对SQLiteDatabase的学习,应该重点掌握execSQL()和rawQuery()方法。execSQL()方

Android数据存储之SQLite(二)
对SQLiteDatabase的学习,应该重点掌握execSQL()和rawQuery()方法。execSQL()方法可以执行insert delete update等有更改行为的SQL语句,rawQuery()方法用于执行select语句。

SQLiteDatabase db = ....;db.beginTransaction();//开始事务try {    db.execSQL("insert into person(name, age) values(?,?)", new Object[]{"HU", 22});    db.execSQL("update person set name=? where personid=?", new Object[]{"XU", 22});    //调用此方法会在执行到endTransaction() 时提交当前事务,如果不调用此方法会回滚事务    db.setTransactionSuccessful();} finally {    //由事务的标志决定是提交事务,还是回滚事务    db.endTransaction();} db.close(); 

上面两条SQL语句在同一个事务中执行。

及时关闭数据库:
第一次调用getWritableDatabase()或getReadableDatabase()方法后,SQLiteOpenHelper会缓存当前的SQLiteDatabase实例,SQLiteDatabase实例正常情况下会维持数据库的打开状态,所以在你不再需要SQLiteDatabase实例时,请及时调用close()方法释放资源。一旦SQLiteDatabase实例被缓存,多次调用getWritableDatabase()或getReadableDatabase()方法得到的都是同一实例。

热点排行