@Pavel-Kosii

Данные в таблице не изменяются. В чем ошибка?

Есть код
@dp.message_handler(commands=['case'])
async def case(message: types.Message):
    connect = sqlite3.connect(r'C:\goldmaster\users.db')
    cursor = connect.cursor()
    user_id = [message.from_user.id]
    cursor.execute(f"""SELECT gold FROM login_id where id = ?""", user_id)
    results = cursor.fetchone()
    if results is not None:
        gold = results[0]
        if gold >= 500:
            gold -= 500
            cursor.execute(f"""Update login_id set gold = ? where id = ?""", (gold, message.from_user.id))
            await bot.send_message(message.chat.id, f'{message.from_user.first_name} ты успешно открыл кейс')
        else:
            await bot.send_message(message.chat.id, f'{message.from_user.first_name} у тебя не достаточно голды для открытия кейса')
    else: 
        await bot.send_message(message.chat.id, f'{message.from_user.first_name} ты не зарегистрирован, введи /start')


Проблема в том, что когда происходит обновление переменной gold то значение в таблице SQL не изменяются. Где может быть ошибка в коде?
  • Вопрос задан
  • 47 просмотров
Решения вопроса 1
@Pavel-Kosii Автор вопроса
решил проблему). забыл добавить connect.commit()
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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