与天地兮比寿,与日月兮齐光。这篇文章主要讲述Android SQLite相关的知识,希望能为你提供帮助。
SQLite使用
一、SQLiteOpenHelperSQLiteOpenHelper是个抽象类,所以需要实体类去继承它
提供两个抽象方法onCreat()和onUpgrade()用来创建和升级数据库
提供两个实例方法
getReadableDatabases()和getWritableDatabases(),这两个方法都可以创建或返回一个可读写的数据库,不同的是当数据库不可写入时(如磁盘空间满),那么getReadableDatabases()将会以只读的方式打开数据库,而getWritableDatabases()则会出现异常,所以平时使用推荐 getReadableDatabases()方法
SQLiteOpenHelper有两个构造方法(可重写),一般使用参数少的那个构造方法。
此方法接收4个参数
1.Context
2.数据库名称
3.第三个参数允许我们在查询数据库的时候返回一个自定义的Cursor,一般直接传入null,如果需要 传入一个cursor对象即可,在构造方法中 对应SQLiteDatabases.Cursorfactory cursor
4.传入一个当前版本号,用于升级数据库
二、使用SQLite进行增查改删(CRUD)
1.添加数据
getReadableDatabases()和getWritableDatabases()两个实例方法会返回一个数据库实例对象,创建使用ContentValues类型对象用来装载数据,ContentValues对象提供了put()方法的多个重载,只需在put()方法的参数列表中以("字段名","值")的形式添加即可,然后调用数据库实例对象的insert()方法来插入数据,insert()方法需要三个参数,第一个是 表名 ,第二个是 用于未指定添加数据的情况下给某些可为空的列自动赋值NULL,一般不需要,直接传入null, 第三个是 ContentValues对象。如图↓
文章图片
2.更新数据
更新数据,系统为我们提供了一个updata()方法,这个方法第一个参数和insert()方法一个 也是表名,第二个参数是 ContentValues对象 , 第三第四个参数是用来约束更新某一行或几行的数据,不指定 默认更新所有行, 如图↓
文章图片
3.删除数据
删除数据相比较其他三种方法最为简单,因为删除不需要传ContentValues对象过去,所以系统提供的delete()方法需要三个参数,同样第一个 还是表名 ,毕竟咱们得知道 咱们要操作的是哪张表嘛,然后第二第三个参数用于约束删除某一行或几行,不指定 默认删除所有行。 如下图↓↓↓
文章图片
4.查询数据
这特么才是重头戏,毕竟SQL的全称是 Structured Query Language(结构化查询语言),很明显 查询才是重中之重啊!!!。
【Android SQLite】所以 系统提供的query()方法,最短的一个方法重载也需要7的参数
推荐阅读
- Android中的5种数据存储方式
- Android Service
- Android BroadcastReceiver
- Android应用开发-小巫CSDN博客客户端开发开篇
- android自己定义标签的使用,实现扁平化UI设计
- Android PopupWindow使用方法小结
- 安卓ContentObserver模式获取短信用正则自己主动填充验证码
- 万里征程——Windows App开发DatePickerFlyoutTimePickerFlyout的使用
- Android——4.2 - 3G移植之路之 APN