继承SQLiteOpenHelper 类,可以在这里进行版本控制,添加表或修改表结构
public class DataBaseHelper extends SQLiteOpenHelper {
private String SQL_LOGIN = "create table login_table(_id integer primary key autoincrement," +
"name text," +
"signTime text," +
"dateTime text)";
public DataBaseHelper(Context context, SQLiteDatabase.CursorFactory factory) {
super(context, "test_db", factory, 1);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL(SQL_LOGIN);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
//改变版本的时候会执行这里
if (newVersion > oldVersion){
}
}
}
增删改查
public class LoginData {
private static LoginData orderData = null;
public static LoginData getIntance() {
if (orderData == null){
orderData = new LoginData();
}
return orderData;
}
/** 插入 **/
public void insert(Map<String, String> map) {
DataBaseHelper helper = new DataBaseHelper(MyApplication.context, null);
SQLiteDatabase db = helper.getWritableDatabase();
ContentValues contentValues = new ContentValues();
if (map != null && !map.isEmpty()){
for (Map.Entry<String, String> entry : map.entrySet()) {
contentValues.put(entry.getKey(), entry.getValue());
}
}
db.insert("login_table", null, contentValues);
db.close();
helper.close();
}
/** 删除 **/
public void delete(String name) {
DataBaseHelper helper = new DataBaseHelper(MyApplication.context, null);
SQLiteDatabase db = helper.getWritableDatabase();
db.execSQL("delete from login_table where name = " + name);
db.close();
helper.close();
}
/** 清空表数据 **/
public void clearTable() {
DataBaseHelper helper = new DataBaseHelper(MyApplication.context, null);
SQLiteDatabase db = helper.getWritableDatabase();
db.execSQL("DELETE FROM login_table");
db.close();
helper.close();
}
/** 删除表 **/
public void deleteTable() {
DataBaseHelper helper = new DataBaseHelper(MyApplication.context, null);
SQLiteDatabase db = helper.getWritableDatabase();
db.execSQL("DROP TABLE login_table");
db.close();
helper.close();
}
/** 修改 **/
public void update(Map<String, String> map, String name) {
DataBaseHelper helper = new DataBaseHelper(MyApplication.context, null);
SQLiteDatabase db = helper.getWritableDatabase();
ContentValues contentValues = new ContentValues();
if (map != null && !map.isEmpty()){
for (Map.Entry<String, String> entry : map.entrySet()) {
contentValues.put(entry.getKey(), entry.getValue());
}
}
String whereClause = "name = ?";
String[] whereArgs={ name };
db.update("login_table", contentValues, whereClause, whereArgs);
db.close();
helper.close();
}
/** 查询 **/
public ArrayList<LoginInfo> selete() {
DataBaseHelper helper = new DataBaseHelper(MyApplication.context, null);
ArrayList<LoginInfo> list = new ArrayList<>();
SQLiteDatabase db = helper.getWritableDatabase();
Cursor c = db.query("login_table",null,null,null,null,null,"_id desc");
while (c.moveToNext()){
LoginInfoinfo = new LoginInfo();
info.setName(c.getString(c.getColumnIndex("name")));
info.setSignTime(c.getString(c.getColumnIndex("signTime")));
info.setDateTime(c.getString(c.getColumnIndex("dateTime")));
list.add(info);
}
c.close();
db.close();
helper.close();
return list;
}
}