簡體   English   中英

SQLite數據庫不更新值

[英]Sqlite Database not updating values

由於某種原因,我的數據庫未更新其值。 根據我一直關注的教程,我真的不知道出什么問題了,這是databaseAdapter上的代碼:

  public boolean updatePhysicalActivity(String tableName, String recommendation, String activityDate, String activityDistance, String activityTime, String monitor, String activityVelocity ){
     ContentValues args = new ContentValues();
     args.put(RECOMMENDATION,recommendation);
     args.put(ACTIVITY_DATE, activityDate);
     args.put(ACTIVITY_DISTANCE, activityDistance);
     args.put(ACTIVITY_TIME, activityTime);
     args.put(ACTIVITY_VELOCITY, activityVelocity);
     args.put(MONITOR, monitor);
     return db.update(tableName, args, ACTIVITY_DATE + "=" + activityDate, null) > 0;
}

我有一些使用相同列的不同表,這就是為什么在調用update方法時命名該表的原因。 我已經調試了程序,所以我知道值將在此函數中傳遞,但是以后再檢查時,什么都沒有發生。 另外,我想更新具有相同ACTIVITY_DATE值的表,這就是為什么我使用ACTIVITY_DATE而不是KEYID(在本教程中使用過)的原因。 這可能是問題嗎? 如果是這樣,我該如何解決?

謝謝!

update方法具有以下簽名: update(table, values, whereClause, whereArgs)

正確的方法是:

條款:

ACTIVITY_DATE +“ =?”

whereArgs:

新的String [] {activityDate}

您已在此行中省略了單引號:

return db.update(tableName, args, ACTIVITY_DATE + "=" + activityDate, null) > 0;

更改為:

return db.update(tableName, args, ACTIVITY_DATE + "='" + activityDate +"'", null) > 0;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM