我要疯了。我一直在尝试更新SQLite数据库中一行的一列,但是无论我尝试什么,它都不会发生。该值从未更新,并且日志中没有异常。
以下代码可能最好地总结了我的问题。
updateLatestMessage()
函数是数据库控制器类的一部分。
public void updateLatestMessage(int messageID,int chatID){
Log.d("DB","message ID =" + messageID); //example output = 125
Log.d("DB","chat ID =" + chatID); //example output = 2
SQLiteDatabase db = this.getwritabledatabase();
try {
Contentvalues cv = new Contentvalues();
cv.put("latest_message_id",messageID);
db.update("chat",cv,"chat_id = ?" + chatID,null);
db.close();
//db.update(tableChat.TABLE_NAME,tableChat.getchatId() + " = ?",new String[]{String.valueOf(chatID)}); // tried this before didn't work either
}
catch(Exception e) {
Log.d("DB","Error: "+e.toString());
}
}
当前最新消息的ID为5
myDB.chat.updateLatestMessage((int) messageID,globalChatID);//calling the above DB update code
运行此代码后,最新消息的ID仍为5而不是125
我希望在已经存在的聊天行内的“ latest_message_id”列中更新messageID。