我的應用程序允許用戶修改影響多行的信息。用戶可以修改其中幾個,但我只是想要將更改應用到數據庫,如果用戶選擇保存(他可以放棄更改) 我有這個問題。Android:只在用戶保存後纔在數據庫中插入Sqlite
現在我試圖使用values.put,然後在save onClickListener中調用db.insert,但是如果用戶更改了多行,這隻會反映用戶最後一次更改,對吧? (一行由name,date,spinnerGeneral,spinnerSprint,timeSprint,spinnerRest,timeRest)我該如何處理這個?值的數組,然後調用每個人的插入?
這是我的代碼現在
values.put("name", workoutName);
values.put("date",datewo);
values.put("spinnerGeneral", data.get(1).getSpinnerGeneral());
values.put("spinnerSprint", data.get(1).getSpinnerSprint());
values.put("timeSprint", data.get(1).getTimeSprint());
values.put("spinnerRest", data.get(1).getSpinnerRest());
values.put("timeRest", data.get(1).getTimeRest());
[....]
@Override
public boolean onOptionsItemSelected(MenuItem item) {
saveData=true;
int id = item.getItemId();
if (id == R.id.action_save){
long rowId = db.insert("workout",null,values);
onBackPressed();
}
我也想過打電話只是db.insert()當用戶第一次修改了一行,並保存ROW_ID到一個數組ROWID [],如果用戶決定放棄更改,只需刪除所有具有我擁有的row_ID的行。這可能嗎?它只是使用DELETE * FROM鍛鍊WHERE Row_ID = rowID [1 ...]? Row_ID是它自動生成的列的名稱?
非常感謝您