db.update 改为 db.insert
db.update does db.insert instead
有人知道为什么这段代码执行插入而不是更新吗?它不会失败,它只是插入。从而提升数据库。
String[] cur_row = {String.valueOf(cursor.getPosition())};
values.put("colA", dataA);
values.put("colB", dataB);
values.put("colC", dataC);
db.beginTransaction();
try{
db.update("tbl2", values, "_id=?", cur_row);
db.setTransactionSuccessful();
}catch(Exception e){
System.out.println("FAIL: " + e);
}
finally{
db.endTransaction();
}
非常感谢
cur_row 从它在 SCA 上分配到发生更新之间不同步。 values.put("colA", dataA) 是从自动完成文本视图提供的。当我发布这个问题时,我认为这并不重要。对于 whereArgs,对于更新,我使用了 SCA 选定项的 .getItemId(position),然后将其分配给一个变量以传递给 whereArgs。感谢发贴的人。
有人知道为什么这段代码执行插入而不是更新吗?它不会失败,它只是插入。从而提升数据库。
String[] cur_row = {String.valueOf(cursor.getPosition())};
values.put("colA", dataA);
values.put("colB", dataB);
values.put("colC", dataC);
db.beginTransaction();
try{
db.update("tbl2", values, "_id=?", cur_row);
db.setTransactionSuccessful();
}catch(Exception e){
System.out.println("FAIL: " + e);
}
finally{
db.endTransaction();
}
非常感谢
cur_row 从它在 SCA 上分配到发生更新之间不同步。 values.put("colA", dataA) 是从自动完成文本视图提供的。当我发布这个问题时,我认为这并不重要。对于 whereArgs,对于更新,我使用了 SCA 选定项的 .getItemId(position),然后将其分配给一个变量以传递给 whereArgs。感谢发贴的人。