1.创建sqliteOpenHelper类创建表
sqlite数据库很简单,拉大锯老师有很详细的视频教程,可以去搜索,一学就会,这里只做简单的笔记。 oncreate方法创建表,onUpgrade用于数据库的升级和修改
public class SqliteOpenHelper extends SQLiteOpenHelper {
private String sql;
public SqliteOpenHelper(@Nullable Context context) {
super(context, DBContants.DB_NAME, null, DBContants.VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
sql = "create table "
+ DBContants.TABLE_NAME + " ( "
+ DBContants.TABLE_FIELD_ID + " integer primary key ,"
+ DBContants.TABLE_FIELD_TITLE + " varchar(255) , "
+ DBContants.TABLE_FIELD_DESCRIPTION + " varchar(255) ,"
+ DBContants.TABLE_FIELD_TIME_START + " varchar(255), "
+DBContants.TABLE_FIELD_TIME_END+ " varchar(255), "
+DBContants.TABLE_FIELD_FINISHCASE+ " varchar(255)) " ;
db.execSQL(sql);
sql = "create table "
+ DBContants.TABLE_NAME_CHARGE + "( "
+ DBContants.TABLE_FIELD_CHARGE_ID + " integer primary key autoincrement ,"
+ DBContants.TABLE_FIELD_CHARGE_TIME + " varchar(255) ) ";;
db.execSQL(sql);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
}
}
2.创建bean类
就是创建对象类geter seter方法,没什么技术含量
3.二级标题创建dao类(增删改查)
这里提供数据库的增删改查操作的方法,要用的时候直接调用就可以了,具体需要怎么查怎么插怎么删怎么改,自己加对应的参数就好了
public class EventDao {
private SqliteOpenHelper mHelper;
private SQLiteDatabase db;
private ContentValues values;
private String TAG="EventDao";
public EventDao(Context context){
mHelper=new SqliteOpenHelper(context);
}
public long insert(Events event){
db=mHelper.getWritableDatabase();
values=new ContentValues();
values.put("title",event.getTitle());
values.put("_id",event.get_id());
values.put("description",event.getDescription());
values.put("time_start",event.getTime_start());
values.put("time_end",event.getTime_end());
values.put("finnishcase","not");
long result = db.insert(DBContants.TABLE_NAME, null, values);
return result;
}
public int delete(Events events){
db=mHelper.getWritableDatabase();
int result = db.delete(DBContants.TABLE_NAME, "_id=?", new String[]{events.get_id()+""});
return result;
}
public int update(Events events){
values=new ContentValues();
db=mHelper.getWritableDatabase();
values.put("time_start",events.getTime_start());
values.put("_id",events.get_id());
values.put("time_end",events.getTime_end());
Log.d(TAG,"finishing:"+events.getFinnishcase());
values.put("title",events.getTitle());
values.put("finnishcase",events.getFinnishcase());
values.put("description",events.getDescription());
int result = db.update(DBContants.TABLE_NAME, values, "_id=?", new String[]{events.get_id()+""});
return result;
}
....
.....
public Cursor queryBySearchDateAndTime(String searchDate, String searchTime) {
db = mHelper.getReadableDatabase();
db.query(DBContants.TABLE_NAME, null, "", null, null, null, null);
Cursor result = db.query(DBContants.TABLE_NAME, null, "time_end =?", new String[]{searchDate+"-"+searchTime}, null, null, null);
return result;
}
}
4. 调用
使用的时候直接new对应的dao类调用相应的方法就可以了