当我们缓存本地的数据存在一对多(一个name对应多个values)的情况时,sharedPreferences已经无法胜任存储的工作了。此时我们需要使用SQLite来进行本地缓存。
直接使用SQlite进行存储时,每次执行插入,查询,删除操作都要写一大堆代码,很麻烦,所以我们对SQLite进行一下简单的封装,下面给出例子:
在这个例子中,我们要存储同学的姓名,年龄,指导老师,家庭地址,手机号等数据。
直接使用SQlite进行存储时,每次执行插入,查询,删除操作都要写一大堆代码,很麻烦,所以我们对SQLite进行一下简单的封装,下面给出例子:
在这个例子中,我们要存储同学的姓名,年龄,指导老师,家庭地址,手机号等数据。
步骤一:创建SQLiteOpenHelper类,用于建表操作:
DBHelper.java:
public class DBHelper extends SQLiteOpenHelper {
private static final String DB_NAME = "student.db";
private static final int version = 1;
private static final String SQL_CREATE = "create table student_info(_id integer primary key autoincrement,student_id integer,name text,age integer,teacher text,address text,phone long)";
private static final String SQL_DROP = "drop table if exists student_info";
public DBHelper(Context context) {
super(context, DB_NAME, null, version);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL(SQL_CREATE);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.