如何在Sqlite中更新数据?

时间:2012-06-18 06:27:31

标签: android sqlite

在我的android应用程序中,我正在使用sqlite数据库。我使用以下代码更新数据,但数据未更新。

public int setCurrentLevel(int level)
{
  //update table level set currentlevel = level;
  int slevel = level;
  Log.d("QUIZ APP", "inside on setcreatelevel is "+slevel);
  ContentValues args = new ContentValues();
  args.put("currentlevel", slevel);

  return db.update("level", args, "currentlevel" + ">=" + slevel, null);
}

5 个答案:

答案 0 :(得分:2)

你去吧

db.update("level",args,"currentlevel>= ?", new String[] { String.valueOf(level) });

答案 1 :(得分:0)

在你的功能中使用这种代码

public boolean updateTitle(long rowId, String isbn,
String title, String publisher)
{
ContentValues args = new ContentValues();
args.put(KEY_ISBN, isbn);
args.put(KEY_TITLE, title);
args.put(KEY_PUBLISHER, publisher);
return db.update(DATABASE_TABLE, args,
KEY_ROWID + "=" + rowId, null) > 0;
}

答案 2 :(得分:0)

试试这个

    public int setCurrentLevel(int level)
   {
            //update table level set currentlevel = level;
            int slevel = level;
            Log.d("QUIZ APP", "inside on setcreatelevel is "+slevel);
            ContentValues args = new ContentValues();
            args.put("currentlevel", slevel);
             return db.update("level", args, 
                 "currentlevel" + ">=" + slevel, null)>0;

      }

答案 3 :(得分:0)

使用此查询.........还提及您要触发此更新的某些条件

      db.execSQL("UPDATE "+tableName+" SET "+columnNameValue+" WHERE "+condition+"");

您的查询将如下所示:

    db.execSQL("UPDATE level SET currentlevel="+slevel +" WHERE currentlevel \\>=" + slevel+"");

答案 4 :(得分:0)

试试这个,

ContentValues cv = new ContentValues();
cv.put("Field", value);
db.update("Table", cv, "Field='value'", null);