Android Sqlite 之 getWritableDatabase()和getReadableDatabase()区别

在Android开发中,如果我们想对sqlite数据库进行一系列的操作,都需要获得一个SQLiteDatabase对象,然后调用它的增删改查方法,官方给我们提供了两种方法来获得我们所需要的对象,getWritableDatabase()和getReadableDatabase(),但是这两种方法有什么不同之处呢?相信很多人没有去研究过吧?下面就给大家讲讲区别:

首先getWritableDatabase()和getReadableDatabase()都返回一个SQLiteDatabase对象,但getWritableDatabase()方法以读写方式打开数据库,一旦数据库的磁盘空间满了,数据库就只能读而不能写,
此时使用getWritableDatabase()打开数据库就会出错。而getReadableDatabase()方法先以读写方式打开数据库,
倘若使用如果数据库的磁盘空间满了,就会打开失败,当打开失败后会继续尝试以只读方式打开数据库.

在实际开发中,我们很少会遇到数据库所在的磁盘空间满了,所以这两种方法都可以使用。

你可能感兴趣的:(Android Sqlite 之 getWritableDatabase()和getReadableDatabase()区别)