Android中的数据存储方式
Android中的数据存储方式有五种:
1、网络存储
2、File (能在JAVA代码中创建file文件夹做储存)
3、SQLite
4、SharePreferences
5、Contert Provider
SQLite:
SQLite是一个轻量级的数据库,支持基本的SQL语法,是常被采用的一种数据存储方式。
Android为此数据库提供了一个名为SQLiteDatabase的类,封装了一些操作数据库的api
SQLite是一个轻量级的关系型数据库,运算速度快,占用资源少,很适合在移动设备上使用, 支持标准SQL语法,无需账号,使用起来非常方便!
SQLite支持五种数据类型:
NULL,INTEGER,REAL(浮点数),TEXT(字符串文本)和BLOB(二进制对象) 虽然只有五种,但是对于varchar,char等其他数据类型都是可以保存的;因为SQLite有个最大的特点: 你可以各种数据类型的数据保存到任何字段中而不用关心字段声明的数据类型是什么,比如你 可以在Integer类型的字段中存放字符串,除了声明为主键
CREATE TABLE person (personid integer primary key autoincrement, name varchar(20));
SQlite通过文件来保存数据库:
一个文件就是一个数据库,数据库中又包含多个表格,表格里又有 多条记录,每个记录由多个字段构成,每个字段有对应的值,每个值我们可以指定类型,也可以不指定 类型(主键除外)
主键INTEGER PRIMARY KEY的字段只能够存储64位整数!
SQLiteOpenHelper:
抽象类,我们通过继承该类,然后重写数据库创建以及更新的方法, 我们还可以通过该类的对象获得数据库实例,或者关闭数据库!
SQLiteDatabase:数据库访问类:我们可以通过该类的对象来对数据库做一些增删改查的操作
Cursor:
游标,结果集!可以简单理解为指向数据库中某 一个记录的指针!
对于涉及数据库的app,我们不是手动地去给他创建数据库文件,所以需要在第一次启用app 的时候就创建好数据库表;而当我们的应用进行升级需要修改数据库表的结构时,这个时候就需要 对数据库表进行更新了;对于这两个操作,安卓给我们提供了
SQLiteOpenHelper的两个方法, onCreate( )与onUpgrade( )来实现
onCreate(database):首次使用软件时生成数据库表
onUpgrade(database,oldVersion,newVersion):
在数据库的版本发生变化时会被调用, 一般在软件升级时才需改变版本号,而数据库的版本是由程序员控制的
SharePreferences:
除SQLite数据库外,另一种常用的数据存储方式,其本质就是一个xml文件,常用于存储较简单的参数设置。
Contert Provider:
Android系统中能实现所有应用程序共享的一种数据存储方式,由于数据通常在各应用间的是互相私密的,所以此存储方式较少使用,但是其又是必不可少的一种存储方式。