@DeeDD11

Как каждые 24 часа добавлять монеты на баланс?

Нужно, чтобы каждые 24 часа пользователям добавлялось по 5 монет.

Код:

balance = int(5)
            db.addBalance(message.from_user.id, balance5)

def addBalance(self, user_id, balance):
        with self.connection:
            return self.cursor.execute("UPDATE `users` SET `balance` = ? WHERE `user_id` = ?", (balance, user_id,))
  • Вопрос задан
  • 108 просмотров
Пригласить эксперта
Ответы на вопрос 1
@rPman
Понятно что автор не удосужился просто понять код который привел сам, в нем нужно поправить sql запрос
UPDATE `users` SET `balance` = `balance` + ? WHERE `user_id` = ?

И настроить периодический вызов метода addBalance

... но это простая и неправильная практика построения финансовых приложений.
Дело в том что финансовые приложения должны давать возможность анализировать историю (например чтобы можно было делать аналитический отчет на период), а еще это нужно чтобы выявлять и решать проблемы с логикой и кодом, отменять транзакции (а это один из способов решения многих других с внешними причинами) и т.п.

Поэтому, в базе данных должны храниться все операции, а итоговый баланс должен считаться тригерами на основе этих данных (только не советую тригером каждый раз считать сумму всех операций, нужно хранить баланс, дату обновления и суммировать новые сделки с ним)
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы