Android SQLite基础知识介绍

前言

一个应用可以有一个或多个数据库,一个数据库可以有一张或多张表。数据库可以在任何时候创建,数据库中的表可以在任何时候创建。

关系模型的数据描述

SQLite数据库是关系模型数据库。关系模型数据库使用自己的一套术语,其基本术语有属性、元组、关系、关系模型。它的 基本数据结构成为关系。一个数据库又若干个关系组成;一个关系的数学定义就是元组的集合,其逻辑结构的形式描述成为关系模式。组成元组的分量称为属性值,属性所能取值的范围成为域。一个关系和属性都必须唯一命名。

关系模型的数据结构

关系模型的物理表示为二维表格,它由行和列组成,数学表示为笛卡尔积上有意义的子集。

  • 关系:一个对应一张二维表,关系的命名可取表名。
  • 关系模型:用二维表格(关系)表示实体和实体间的联系的模型称为关系模型。
  • 元组:表中的一行即为一个元组。一个元组就代表一个实体,元组的集合为关系的值。
  • 属性:表中的一列即为一个属性,给每一列取一个名称即为属性名。
  • 域:属性的取值范围,如人的年龄1~ 100之间。性别在男~女。
    注:属性与域是两个不同的概念,一个域可以对应多个属性,一般一个属性唯一对应一个域。
  • 分量:元组中的某一个属性值。
  • 关键字:能唯一标识一个元组的属性或属性集。
  • 关系模式:关系名加上属性名的列表就是关系模式。一般写为R(A1,A2,A3,A4,A5),其中R是关系名;A是属性名。

涉及类

  • SQLiteDatabase类,这个类就是代表数据库,但在使用数据库时不能通过该类来直接new SQLiteDatabase();来得到数据库。
  • SQLiteOpenHelper类,这是一个抽象类,所以要继承该类,继承该类必须重写的方法有两个和构造方法。
 public class DBOpenHelper extends SQLiteOpenHelper {

    /**
    *构造方法(写完可以写其一也可以)
    */
    public DBOpenHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
        super(context, name, factory, version);
    }

    public DBOpenHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version, DatabaseErrorHandler errorHandler) {
        super(context, name, factory, version, errorHandler);
    }
    /**
    *必须重写的方法
    */
    @Override
    public void onCreate(SQLiteDatabase db) {

    }
    /**
    *必须重写的方法
    */
    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

    }

}

在通过该类对象的getgetWritableDatabase()或getReadableDatabase()方法得到SQLiteDatabase类的对象。

猜你喜欢

转载自blog.csdn.net/xiaol206/article/details/80149673
今日推荐