Если db
правильно инициализирован, с этой строкой:
db.execSQL("UPDATE MainData SET MostMessagesSent = "+ MMS + "+ WHERE Data = MyData");
вы хотите выполнить оператор UPDATE
, который обновит столбец MostMessagesSent
таблицы MainData
с выбранным значениемиз запроса, обработанного в переменной MMS
:
String MMS = "(SELECT Name FROM UserData WHERE MessagesSent=(SELECT max(MessagesSent) FROM UserData))";
Чтобы это работало, вы должны правильно инициализировать объект db
.Я полагаю, у вас есть класс, расширяющий SQLiteOpenHelper
, который обеспечивает инициализацию db
.
Также имена таблиц и столбцов должны соответствовать предполагаемому поведению.Проблема в том, что execSQL()
не возвращает значение, указывающее, было ли обновление успешным или нет.Вы должны проверить это сами.