У меня есть локальная база данных, которая содержит описания рецептов.
В приложении пользователь может добавить рецепт в закладки, я хотел бы обновить соответствующее значение в базе данных, которое, по моему мнению, должно быть условным запросом. (например, если пользователь сначала щелкает по избранному значку, значение должно быть установлено в true, а если он щелкает снова, значение должно быть установлено в false в базе данных).
Я провел небольшое исследование и закончил запросом, подобным следующему:
@Query("UPDATE recipee SET favorite = CASE WHEN favorite = 0 THEN favorite = 1 ELSE favorite = 0 END WHERE name = :name")
void updateFavorite(String name);
Проблема в том, что значение всегда установлено в false, и я не понимаю почему, оно никогда не устанавливает ценить до истины. Я не знаю, была ли проблема с моим запросом. Если бы кто-то мог поднять мне настроение по этому вопросу. Спасибо