Android SQLite 创建数据库

经过前面章节的学习,我们对 SQLite 已经有一个不小的了解了,说白了,它就是一个嵌入式数据库

本章我们来学习如何在 Android 中创建一个 SQLite 数据库

使用 SQLiteOpenHelper 类创建数据库与版本管理

SQLite 数据库不是普通文件,我们几乎不可能先手动的去创建一个,当然也没这个必要,因为 Android 提供了几个帮助类帮助我们创建和管理 SQLite

SQLiteOpenHelperAndroid 提供的 SQLite 管理类,它有两个方法

方法 说明
onCreate(database) 首次使用软件时生成数据库表
onUpgrade(database,oldVersion,newVersion) 在数据库的版本发生变化时会被调用,

第一个方法用于创建数据库,第二个方法用于升级数据库中的表和数据的版本

为什么要升级 表和数据的版本 呢?

因为我们的应用的数据随着需求的不断添加和修改,会需要修改数据库表的结构,这个时候就需要 对数据库表进行更新了

一般在软件升级时才需改变版本号,而数据库的版本是由程序员控制的,假设数据库现在的版本是 1,由于业务的变更,修改了数据库表结构,这时候就需要升级软件,升级软件时希望 更新用户手机里的数据库表结构

为了实现这一目的,可以把原来的数据库版本设置为 2 或者其它与旧版本号不同的数字即可

但一般情况下我们不直接使用 SQLiteOpenHelper.java 而是选择继承它并重写方法

public class MsDBOpenHelper extends SQLiteOpenHelper {
    public MyDBOpenHelper(Context context, String name, CursorFactory factory,
            int version) {super(context, name, null, version); }
    @Override
    //数据库第一次创建时被调用
    public void onCreate(SQLiteDatabase db) {
        db.execSQL("CREATE TABLE lang(id INTEGER PRIMARY KEY AUTOINCREMENT,name VARCHAR(20))");

    }
    //软件版本号发生改变时调用
    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        db.execSQL("ALTER TABLE lang ADD rank INTEGER '0'");
    }
}

Android 基础教程

关于   |   FAQ   |   我们的愿景   |   广告投放   |  博客

  简单教程,简单编程 - IT 入门首选站

Copyright © 2013-2022 简单教程 twle.cn All Rights Reserved.