Android SQLite 创建数据库

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

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

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

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

SQLiteOpenHelper 是 Android 提供的 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.