Боюсь, я не знаю, что делаю.Дизайн базы данных - вопрос об эффективности (и общем качестве дизайна)
1:
У меня есть таблица называется ticket
, который имеет столбец под названием total
. Когда итоговое обновление обновляется, я хочу сохранить его запись (старый итог и т. Д.), Поэтому я решил удалить столбец total
и создать таблицу под названием ticket_total
с колонками ticket_id
, total
и datetime
(последним, конечно же, является «текущая» сумма).
или
2:
Тогда я понял, что позже я хочу, чтобы дать своим клиентам возможность сортировать билеты по total
, или тянуть отчеты, совокупные итоги, и т.д. Таким образом, я решил вместо вернуть столбец total
на номер ticket
, а также изменить столбец total
непосредственно после того, как общее количество будет обновлено, но сначала создайте строку ticket_total
как запись предыдущего total
.
Похоже, что версия 2 была бы очень эффективной, потому что мне не нужно было бы запрашивать связанные таблицы ticket_total
, но мне интересно, что вы думаете о DB-гуру. Я просто изучаю дизайн базы данных и боюсь, что я никогда не буду в этом разбираться.
спасибо. В настоящее время я использую '@ transaction.commit_on_success' Django для переноса метода, который создает обе записи. Как вы думаете, № 2 является «хорошей» практикой проектирования БД в целом. У меня есть полная гибкость, чтобы изменить его, если нет. – orokusaki