**
概述——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) | 打开一个数据库() |
参数解释:
- 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相当于分隔符,在不同的系统中代表不同的意思,如 \或 //。
- SQLiteDatabase.CursorFactory factory—— 工厂类,一般都为null。
在创建Cursor对象时,使用的工厂类,如果没有自定义的工厂类,则选择null,代表使用默认的工厂类。
有些对象的创建不只是一个new操作可以实现的了的,有的时候完成一个对象的创建需要一些前提和过程,而工厂类将这些前提过程进行了抽象,使得创建这类对象时不必去面对细节的创建过程。
关于工厂类的详解:工厂类的描述~
- DatabaseErrorHandler errorHandler—— 让应用程序定义检测到数据库损坏时采取的操作的界面,大概就是错误提示一类的,带这个的方法并不常用。
- 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