Android中SQLite数据库学习笔记
来源:互联网 发布:物流单打印软件 编辑:程序博客网 时间:2024/03/29 14:59
简介
Android会将我们的持久性数据存储在文件系统中,为了简化我们开发应用时所需要写入的类容,Android提供了多个结构化的存储选项:SharedPreferences、SQLite Database等。SharedPreferences类会提供通用的框架,使我们可以保存和检索原始数据类型,如布尔型(boolean)、浮点型(float)、整型(int)、长整型(long)和字符串(string)的持久性键值对。但事实上,SharedPreferences的这种简单的键值对框架无法提供足够的灵活性,因此Android还提供了SQLite。SQLite是一种轻量级关系型数据库,通过写入和查询语句,以及SQLite变体的结构化查询语言(SQL)来与SQLite数据库互动。
Android提供了SQLiteOpenHelper帮助类来让我们更加方便地管理数据库,对数据库进行创建、更新等操作。
SQLiteOpenHelper是一个抽象类,所以我们需要创建一个自己地抽象类。SQLiteOpenHelper类中有两个抽象方法:onCreate()和onUpgrade(),我们需要在自己的帮助类中重写这两个方法。
SQLiteOpenHelper中还有两个非常重要的实例方法:getReadableDatabase()和getWritableDatabase()。这两个方法都可以创建或打开一个现有的数据库,并返回一个可对数据库进行读写操作的对象。
当数据库不可写入的时候,getReadableDatabase()方法返回的对象将以只读的方式打开数据库,而getWritableDatabase()则会出现异常。
SQLiteOpenHelper中有两个构造方法可供重写
SQLiteOpenHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version)SQLiteOpenHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version, DatabaseErrorHandler errorHandler)
通常使用参数少的构造方法。
第一个参数是Context
第二个参数是数据库名,创建数据库时使用的就是这里指定的名称。
第三个参数允许我们在查询数据时返回一个自定义的Cursor,一般传入null。
第四个参数表示当前数据库的版本号,用于对数据库进行升级操作。
构建出SQLiteOpenHelper实例后,再调用getReadableDatabase()或getWritableDatabase()方法就能够创建数据库了。
0 0
- Android中SQLite数据库学习笔记
- Android SQLite数据库学习笔记
- android学习笔记--sqlite数据库
- Android中SQLite学习笔记
- android学习笔记---SQLite数据库的使用
- 【Android学习笔记】SQLite数据库存储
- Android学习笔记 - 数据库篇 (SQLite)
- android学习笔记之SQLite数据库存储
- Android学习笔记 - 数据库篇 (SQLite)
- 学习笔记 android数据库之 Sqlite
- android学习笔记之SQLite数据库
- Android学习笔记---SQLite数据库 api
- android学习笔记(18)数据库sqlite初步
- android学习笔记(19)数据库sqlite进阶
- Android学习笔记----SQLite数据库基本用法
- Android学习笔记——数据库SQLite
- Android学习笔记-SQLite数据库实战
- Android学习笔记(42):SQLite数据库
- nfs配置和使用
- GO语言下载、安装和配置
- C#多线程(一)
- 数值分解(递归)
- 【XIlinx-ZYNQ】 TPG+VTC+AXI4_to_Stream_out构建简单显示电路
- Android中SQLite数据库学习笔记
- USACO 2016 US Open Contest, Gold Problem 3. 248
- swpu&&fjut2016级寒假训练三题解
- tftp配置和使用
- 我的科研生活2017-2-10
- 算法提高 新建Microsoft Word文档
- 阿里巴巴工作qq群(534663231)
- Java中导出jar包的方法以及错误处理
- 电商实例、业务并发、网站并发及解决办法