db.update代替db.insert

时间:2015-01-24 22:57:32

标签: android sqlite

任何人都知道为什么这段代码会插入而不是更新?它不会失败,它只是插入。因此,顶起数据库。

 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();
 }

非常感谢

1 个答案:

答案 0 :(得分:0)

cur_row从SCA分配到更新发生的时间不同步。 values.put(“colA”,dataA)是从自动完整文本视图中提供的。当我发布这个问题时,我认为这不重要。对于whereArgs,对于更新,我使用了SCA所选项的.getItemId(位置),然后将其分配给变量以传递给whereArgs。感谢那些发布的人。