Краткий вопрос:
Каков наилучший способ управления пользовательским балансом и пользовательскими транзакциями?
Вероятно, я бы создал таблицу транзакций, в которой я бы регистрировал каждую транзакцию, а затем выбирал ее, чтобы получить фактический баланс пользователя. Но разве это не будет медленным после тысячи транзакций одного и того же пользователя? Ускорит ли представление вещи?
Или я должен сохранить баланс пользователя в пользовательской таблице и обновить его транзакцией mysql, пока я вставляю в таблицу транзакций?
Не паникуйте. Я не собираюсь обращаться с реальными деньгами.
Да, расчет баланса на лету из всех транзакций будет довольно медленным; представление упростит написание запросов, но не окажет большого влияния на производительность (представление — это просто сокращение, это не фактическая таблица).
Вы должны пойти вторым методом: поставить текущий баланс в account
или же user
таблицы, отделите ее от всех транзакций и обновляйте при каждом добавлении транзакции.
Ты можешь использовать триггеры за это. Всякий раз, когда новая запись добавляется в transactions
таблица, запуск обновлений users
Таблица.