Задать вопрос
@Sergey0432

Почему не работает UPDATE запрос в SQLite?

У меня есть такая БД 63df6c1af09a0110326683.png
Я при нажатии на кнопку хочу вписать в БД trading style текст с кнопки
Я делаю так
def add_ts(self, user_id):
    with self.connection:
        return self.cursor.execute("UPDATE 'users' SET ('trading_style')='Среднесрочная' WHERE 'user_id' = ?", (user_id,))

А вписать пытаюсь так

@dp.callback_query_handler(text="cratcosrochnaya")
async def cratcosrochnaya(message: types.Message):
    await bot.delete_message(message.from_user.id, message.message.message_id)
    await bot.send_message(message.from_user.id, "Текст для Краткосрочная")
    return db.add_ts(message.from_user.id)

Проблема в том что без WHERE и всего что после него запрос работает, но меняет все ячейки сразу.
"UPDATE 'users' SET ('trading_style')='Среднесрочная'" - работает
"UPDATE 'users' SET ('trading_style')='Среднесрочная' WHERE 'user_id' = ?" - НЕ работает

В чем может быть проблема?
  • Вопрос задан
  • 119 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Python
Седой и строгий
И кто вас всех только учит писать запросы с кавычками?.. В каких случаях строка "user_id" может быть равна некому числу? Зачем проверять равенство строки числу, если нужно проверять равенство значения поля? Если уж припёрло зачем-то кавычками обрамлять имена таблиц и полей, то хоть правильные бэктики используйте.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Dr_Elvis
@Dr_Elvis Куратор тега Python
В гугле забанен
COMMIT?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы