您的位置:首页 > 移动开发 > Android开发

Android数据库简单操作例子

2017-06-22 14:35 387 查看
创建表(table):
public String CREATE_TAB_XINLV = "create table IF NOT EXISTS XinLv(unique_id  text,starttime text,endtime text,"+"sleep_effect  varchar(120),uid varchar(120))";
db.execSQL(CREATE_TAB_XINLV);
创建数据库代码:
public class SportContentDB extends SQLiteOpenHelper {
private Context context;
private SQLiteDatabase db = null;
private static SportContentDB mInstance = null;
public final static String DB_NAME = "firstpageshow.db";
public final static String TAB_NAME = "firstpageshow_sub";
public final static String UID = "uid";
public final static String SPORT_TIME = "times";
public final static String SPORT_INDEX = "indexs";

private String TAG = "SportSubTaskDB";
public String CREATE_TAB_XINLV = "create table IF NOT EXISTS XinLv(unique_id  text,starttime text,endtime text,sleep_effect  varchar(120),uid varchar(120))";

public synchronized static SportContentDB getInstance(Context context) {
if (mInstance == null) {
mInstance = new SportContentDB(context);
}
return mInstance;
}

private SportContentDB(Context context) {
super(context, DB_NAME, null, 4);
this.context = context;
}

@Override
public void onCreate(SQLiteDatabase db) {
this.db = db;
db.execSQL(CREATE_TAB_XINLV);
}

public Cursor query() {
if (db == null) {
db = getWritableDatabase();
}
return db.rawQuery("select * from firstpageshow_sub", null);
}
.........(各个方法)。
在代码中的方法调用:
contentDB = new sportContent(this); //初始化
for (int i = 0; i < result.size(); i++) {
contentDB.insertXinlv(true, result.get(i));
}//插入数据库
list = contentDB.queryUidXinLv(msApp.getSportUser()
.getUid() + "");//查询数据库
contentDB.deleteSleep(true, sleepEffect);//删除数据库某一条数据
contentDB.deleteAll(true, msApp);//删除数据库中的而全部数据
插入数据库方法:

public int insertXinlv(Boolean isShow, SleepEffect sleepEffect) {
if (db == null) {
db = getWritableDatabase();
}
Cursor querySleep = querySleep(sleepEffect.getUnique_id(),
sleepEffect.getUid(), "XinLv");
ContentValues values = new ContentValues();
values.put("unique_id", sleepEffect.getUnique_id());
values.put("starttime", sleepEffect.getStarttime());
values.put("endtime", sleepEffect.getEndtime());
values.put("sleep_effect", sleepEffect.getHart_rate());
values.put("uid", sleepEffect.getUid());
int id;
if (querySleep != null && querySleep.getCount() > 0) {
id = db.update(
"XinLv",
values,
"unique_id=? and uid=?",
new String[]{sleepEffect.getUnique_id(),
sleepEffect.getUid()});
} else {
id = (int) db.insert("XinLv", null, values);
}
return id;
}

查询数据库方法:

public List<SleepEffect> queryUidXinLv(String uid) {
if (db == null) {
db = getWritableDatabase();
}
List<SleepEffect> sList = new ArrayList<SleepEffect>();
Cursor rawQuery = null;
SleepEffect sleepEffect;
try {
rawQuery = db.rawQuery("select * from XinLv where uid=? order by endtime",
new String[]{uid});
while (rawQuery.moveToNext()) {
sleepEffect = new SleepEffect();
String string = rawQuery.getString(rawQuery
.getColumnIndex("unique_id"));
String string1 = rawQuery.getString(rawQuery
.getColumnIndex("starttime"));
String string2 = rawQuery.getString(rawQuery
.getColumnIndex("endtime"));
String string3 = rawQuery.getString(rawQuery
.getColumnIndex("sleep_effect"));
String string4 = rawQuery.getString(rawQuery
.getColumnIndex("uid"));
sleepEffect.setUnique_id(string);
sleepEffect.setStarttime(string1);
sleepEffect.setEndtime(string2);
sleepEffect.setHart_rate(string3);
sleepEffect.setUid(string4);
sList.add(sleepEffect);
}
} catch (Exception e) {
// TODO: handle exception
} finally {
if (rawQuery != null) {
rawQuery.close();
rawQuery = null;
}
}
return sList;
}

删除某一条数据:

public int deleteSleep(Boolean isShow, SleepEffect sleepEffect) {
if (db == null) {
db = getWritableDatabase();
}

int id = db.delete(
"XinLv",
"unique_id=? and starttime=?",
new String[]{sleepEffect.getUnique_id(),
sleepEffect.getStarttime()});
return id;
}
删除全部数据:
public int deleteAll(Boolean isShow, SportsApp msApp) {
if (db == null) {
db = getWritableDatabase();
}
int id = db.delete("XinLv", "uid=?", new String[]{msApp
.getSportUser().getUid() + ""});
return id;
}





                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: