**

概述——SQLite是什么?

SQLite是Android开发中常用到的一种数据库。
在android studio中,开发者将sqlite的相关方法封装成了SQLiteDatabase类,通过调用这个类来实现对SQLite数据库的操作。

**

详解——SQLiteDatabase类:

SQLiteDatabase类是用来对数据库进行操作的,比如创建或打开数据库,对数据库中的数据进行增删查改等。

SQLiteDatabase类很好用,但是还有一个抽象类SQLiteOpenHelper比SQLiteDatabase更简化了增删查改的操作,这个类在后文会进行详解。

关于SQLiteDatabase的方法详解~

1. 创建或打开数据库:

方法

作用

openOrCreateDatabase(String path, SQLiteDatabase.CursorFactory factory)

打开或者创建一个数据库

openOrCreateDatabase(String path, SQLiteDatabase.CursorFactory factory, DatabaseErrorHandler errorHandler)

打开或创建一个数据库()

openDatabase(String path, SQLiteDatabase.CursorFactory factory, int flags)

打开一个数据库

openDatabase(String path, SQLiteDatabase.CursorFactory factory, int flags, DatabaseErrorHandler errorHandler)

打开一个数据库()

参数解释:

  1. path所要打开或创建的数据库所在的路径,字符串类型
File file = MainActivity.this.getDatabasePath("database").getParentFile();
SQLiteDatabase sqLiteDatabase = SQLiteDatabase.openOrCreateDatabase(file.toString()+File.separator+"school.db",null);
这里代码的意思大概是,首先打开名字为database的文件父目录,然后这个文件目录转换为字符串作为数据库打开或创建的路径,且文件名为“school.db"。
此处的file.toString()+File.separator+"school.db"就是一个路径,其中File.separator相当于分隔符,在不同的系统中代表不同的意思,如 \或 //。
  1. SQLiteDatabase.CursorFactory factory—— 工厂类,一般都为null

在创建Cursor对象时,使用的工厂类,如果没有自定义的工厂类,则选择null,代表使用默认的工厂类。
有些对象的创建不只是一个new操作可以实现的了的,有的时候完成一个对象的创建需要一些前提和过程,而工厂类将这些前提过程进行了抽象,使得创建这类对象时不必去面对细节的创建过程。

关于工厂类的详解:工厂类的描述~

  1. DatabaseErrorHandler errorHandler—— 让应用程序定义检测到数据库损坏时采取的操作的界面,大概就是错误提示一类的,带这个的方法并不常用。
  2. flags—— 权限
  • OPEN_READONLY :只读方式打开数据库(常量值为:1)
  • OPEN_READWRITE:读写方式打开数据库(常量值为:0)
  • CREATE_IF_NECESSARY:当数据库不存在时创建数据库
  • NO_LOCALIZED_COLLATORS:打开数据库时,不根据本地化语言对数据库进行排序(常量值为:16)

2.创建表:

1.代码创建生成表
2.通过.csv文件导入sqlite软件生成表

3.数据库中数据的增删查改:

1.增加(插入):insert
2.删除:delete
3.修改:update
4.查找:query