zoukankan      html  css  js  c++  java
  • android 使用SQLite存储数据

    创建一个类继承SQLiteOpenHelper,重写他的构造方法、onCreate()、onUpgrade()

    构建出SQLiteOpenHelper实例后,再调用他的getReadableDatabase()货getWritableDatabase()方法就能创建数据库

    getReadableDatabase()和getWritableDatabase()两个方法都可创建或打开一个现有的数据库

    不同的是,当数据库不可写入的时候,getReadableDatabase()方法返回的对象将以只读的方式打开数据库,而getWritableDatabase()方法将出现异常

    放在/data/data/<package name>/databases/目录下

    public class FeedReaderDbHelper extends SQLiteOpenHelper {
        // If you change the database schema, you must increment the database version.
        public static final int DATABASE_VERSION = 1;
        public static final String DATABASE_NAME = "FeedReader.db";
    
        public FeedReaderDbHelper(Context context) {
            super(context, DATABASE_NAME, null, DATABASE_VERSION);
        }
        public void onCreate(SQLiteDatabase db) {
            db.execSQL(SQL_CREATE_ENTRIES);
        }
        public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
            // This database is only a cache for online data, so its upgrade policy is
            // to simply to discard the data and start over
            db.execSQL(SQL_DELETE_ENTRIES);
            onCreate(db);
        }
        public void onDowngrade(SQLiteDatabase db, int oldVersion, int newVersion) {
            onUpgrade(db, oldVersion, newVersion);
        }
    }

    用ContentValues对象用来更新数据、插入数据

    Cursor对象用来查询

  • 相关阅读:
    用一次就会爱上的cli工具开发
    npm与package.json快速入门
    检查服务器端口状态
    浅谈数据库用户表结构设计
    CAP 定理的含义
    蓝绿部署、金丝雀发布(灰度发布)、A/B测试
    Dockerfile多阶段构建原理和使用场景
    Dockerfile 中的 CMD 与 ENTRYPOINT
    maven全局配置文件settings.xml详解
    Linux之根目录说明
  • 原文地址:https://www.cnblogs.com/zquan/p/9404691.html
Copyright © 2011-2022 走看看