【发布时间】:2017-07-25 23:40:15
【问题描述】:
我有一种方法可以将值插入到类中的sqlite 中。在主要活动中,我正在解析 json 值并尝试在循环中将这些值插入sqlite,因为我必须插入多行。但是只有一行被添加到数据库中。
添加多行的方法如下:
public void addSession(String sessionname,String start_time,String end_time,String id) {
SQLiteDatabase db = this.getWritableDatabase();
try {
db.beginTransaction();
String sql = "Insert into session (id, sessionname,start_time, end_time) values(?,?,?,?)";
SQLiteStatement insert = db.compileStatement(sql);
insert.bindString(1, id);
insert.bindString(2, sessionname);
insert.bindString(3, start_time);
insert.bindString(4, end_time);
insert.execute();
db.setTransactionSuccessful();
} catch (Exception e) {
Log.w("Appet8:",e );
} finally {
db.endTransaction();
}
}
在下面的 for 循环中,我尝试将值添加到 sqlite 表中:
JSONObject jsonObject = new JSONObject(response);
JSONArray foodsessions = jsonObject.getJSONArray("foodsessions");
for(int i=0;i<foodsessions.length();i++) {
JSONObject session_object = foodsessions.getJSONObject(i);
String session = session_object.getString("sessionname");
String start_time = session_object.getString("start_time");
String end_time = session_object.getString("end_time");
String session_id = session_object.getString("id");
db.addSession(session,start_time,end_time,session_id);
}
【问题讨论】:
-
这个帖子可能对你有帮助:stackoverflow.com/q/1609637/468724