2012-06-18 2 views
0

В моем приложении Android я использую базу данных sqlite. Я использую следующий код для обновления данных, но данные не обновляются.Как обновить данные в 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); 
} 
+0

пожалуйста, напишите класс дб адаптер также – Rakshi

+0

общественного ИНТ setCurrentLevel (интермедиат уровень) { // обновление уровня уровня таблицы currentlevel = level; int slevel = level; Log.d («QUIZ APP», «внутри на setcreatelevel есть» + slevel); ContentValues ​​args = new ContentValues ​​(); args.put ("currentlevel", slevel); return db.update ("level", args, "currentlevel" + "> =" + slevel, null)> 0; } – Androiduser

+0

Используйте ContentValues ​​для обновления. [Взгляните на этот блог и используйте их пример приложения] (http://www.codeproject.com/Articles/119293/Using-SQLite-Database-with-Android) – Praveenkumar

ответ

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; 
} 
+0

Я создал инструмент менеджера sqlite таблицы, будет ли это проблемой. – machu

0

Try This

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; 

     } 
+0

Данные не обновляются .. – machu

0

использовать этот запрос ......... также отметить некоторые условия, на которых вы хотели бы увольнять это обновление

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

Ваш запрос будет выглядеть примерно так:

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

Здесь вы идете

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

Попробуйте это,

ContentValues cv = new ContentValues(); 
cv.put("Field", value); 
db.update("Table", cv, "Field='value'", null); 
Смежные вопросы