gpt4 book ai didi

android - 如何更新表值

转载 作者:行者123 更新时间:2023-11-29 01:48:46 26 4
gpt4 key购买 nike

enter image description here

我有表格(如图所示)。我想更新时间列。我有 medicine_id(second column) 如何根据相同的 medicine_id(second column) 更新不同的时间。

此外,当我更新时我的数据库中有四行它应该是两行意味着,我想删除具有特定 medicine_id 的其他两行..

我有以下更新代码:

if(mon) {
for (int i = 0; i < dosage_per_day; i++) {
mMedicineDbHelper.updateMedicines(new
MedicineTime(row_id, time_InMillies[i]));
}
}

我的数据库代码:

public void updateMedicines(MedicineTime medicineTime) {

SQLiteDatabase db = this.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(ID, medicineTime.getId());
values.put(MEDICINEID, medicineTime.getMedicine_id());
values.put(TIME, medicineTime.getTime_in_millis());
db.update(TABLENAME, values, MEDICINEID + " = ?",
new String[]{String.valueOf(medicineTime.getMedicine_id())});
db.close();

}

它显示异常..任何人都可以帮助解决这个问题......

最佳答案

对于最初提出的问题,您正在执行以下代码:

db.update(TABLENAME, values, MEDICINEID + " = ?", 
new String[]{String.valueOf(medicineTime.getMedicine_id())});

出于某种原因,在 Android 上,将数值转换为字符串并将其用于选择参数永远无法正常工作。请参阅:Android Sqlite selection args[] with int values .执行此操作的最佳方法如下:

db.update(TABLENAME, values, MEDICINEID + " = " + medicineTime.getMedicine_id(), null);

关于android - 如何更新表值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19685043/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com