`

getWritableDatabase()和getReadableDatabase()的区别

 
阅读更多
getReadableDatabase()并不是以只读方式打开数据库,而是先执行getWritableDatabase(),失败的情况下才调用。

getWritableDatabase()和getReadableDatabase()方法都可以获取一个用于操作数据库的SQLiteDatabase实例。

但getWritableDatabase()方法以读写方式打开数据库,一旦数据库的磁盘空间满了,数据库就只能读而不能写,

getWritableDatabase()打开数据库就会出错。getReadableDatabase()方法先以读写方式打开数据库.

倘若使用如果数据库的磁盘空间满了,就会打开失败,当打开失败后会继续尝试以只读方式打开数据库。
分享到:
评论

相关推荐

    Android中getWritableDatabase()和getReadableDatabase()的区别

    详细解释了getWritableDatabase()和getReadableDatabase()的区别。

    Android getReadableDatabase() 和 getWritableDatabase()分析对比

    Android getReadableDatabase() 和 getWritableDatabase()分析对比 Android使用getWritableDatabase()和getReadableDatabase()方法都可以获取一个用于操作数据库的SQLiteDatabase实例。(getReadableDatabase()方法中...

    SQLite数据库创建、更新demo

    getReadableDatabase() 和getWritableDatabase()。 这两个方法都可以创建或打开一个现有的数据库(如果数据库已存在则直接打开,否则创建一个新的数据库) , 并返回一个可对数据库进行读写操作的对象。 不同的是,...

    android 数据库 小应用

    SQLiteDatabase DB=getWritableDatabase(); ContentValues values=new ContentValues(); values.put("ItemName", ItemName); values.put("Money", Money); values.put("time", time); return DB.insert...

    【android编程】第十一讲-数据储存

    使用SharedPreferences示例2.SQLite数据库编程SQLiteOpenHelper类 常用方法自定义数据库子类(继承 SQLiteOpenHelper 类)创建数据库:getWritableDatabase()、getReadableDatabase()操作数据库(增、删、查、改...

    【android】SQLiteOpenHelper实现数据库的增删改查(封装的思想,一个小框架)

    最近学习安卓遇到了对数据库的操作,用到了SQLiteOpenHelper这个类来连接或者创建数据库,通过getWritableDatabase()或者getReadableDatabase(),来对表进行写入或读取操作。 1. 为什么需要SQLiteOpenHelper? ...

    Android 订机票APP实例源代码.rar

     另外本代码的SQLiteOepnHelper子类当中必须有该构造函数,必须通过super调用父类当中的构造函数,只有调用了DatabaseHelper对象的getReadableDatabase()方法,或者是getWritableDatabase()方法之后,才会创建,或...

    HouseKeepingBook

    getWritableDatabase() , getReadableDatabase() :用于创建或打开数据库。 ContentValues contentValues = new ContentValues (); // 데이터를 담을 객체 생성 contentValues . put( DBStructure . COLUMN_NAME_...

    Android 使用SQLite数据库

    android数据库使用真的很不错 SQLiteOpenHelper 创建数据库和数据库版本管理的辅助...同时此类还有3个synchronized方法:void close(),SQLiteDatabase getReadableDatabase(),SQLiteDatabase getWritableDatabase()。

    Android机票在线预订查询程序

    数据库部分:在SQLiteOepnHelper的子类当中,必须有该构造函数,必须通过super调用父类当中的构造函数,只有调用了DatabaseHelper对象的getReadableDatabase()方法,或者是getWritableDatabase()方法之后,才会创建...

    SQLite数据库的增删改查demo

    今天学习数据库的增删改查 调用 SQLiteOpenHelper的 getReadableDatabase()或 getWritableDatabase()方法都会返回一个SQLiteDatabase对象, 借助这个对象就可以对数据进行 CRUD 操作了。

    android连接SQLite数据库源代码

    1.getWritableDatabase()和getReadableDatabase()的区别 ,两个方法都可以获取一个用于操作数据库的SQLiteDatabase实例 2.execSQL(增,删,改都是这个方法)和close();android内部有缓存可关闭也不关闭也行,查询...

    sqlitedemo(Android Studio model)

    - 使用步骤: - 创建数据库的操作类 -- 必须继承 SQLiteOpenHelper - onCreate() 当数据库创建的时候调用(一般用户创建初始表) ... - sqLiteDBHelper.getWritableDatabase() ---- update、insert、delete

    Android营养食品系统

    db dbOpenHelper getWritableDatabase ; } catch SQLiteException ex { db dbOpenHelper getReadableDatabase ; } } 插入数据 public long insert People people { ContentValues newValues new ...

    android SQLite数据库总结

    SQLite SQLite是一种超轻量级的嵌入式数据库,大小只有几百KB,但是其语法支持标准SQL语法,同时还遵循了数据库的ACID事务,所以学过其他数据库的开发人员都很容易掌握其使用。...getWritableDatabase() 

    sqlite的特殊使用

    SQLiteDatabase db = mOpenHelper.getWritableDatabase(); String sql = "create table Student(" + "stud_no text not null, " + "stud_name text );"; try { db.execSQL(sql); setTitle("create table ok!...

    ContentProvider

    sqLiteDatabase=myOpenHelper.getWritableDatabase(); int flag=URI_MATCHER.match(uri); switch (flag) { case 1: sqLiteDatabase.insert(Table_Name, name, values); break; case 2: long ...

Global site tag (gtag.js) - Google Analytics