Это сценарий, который я часто встречается:Проектирование таблиц для заказа системы
Нормализация часто требует от нас разработки таблиц таким образом, что данные не повторится.
Пример типичного ввода заказа, который показывает следующую информацию:
- Описание продукта.
- Цена товара.
Пример нормализованной базы данных, таблица заказов, вероятно, будет иметь PK таблицы продуктов (которая содержит описание продукта, цены).
Однако цена товара может увеличиться/уменьшиться после того, как клиент сделает заказ.
Должен ли я хранить цены на продукт во время транзакции в таблице заказов?
Есть ли лучшее решение для этого типа проблем?
Одна вещь: ** не ** вызывать вашу таблицу 'Order', так как это зарезервированное ключевое слово SQL (как в' ORDER BY') - назовите его 'Orders' или что-то еще! –
@marc_s Nooooo не плюрализует имена моих таблиц! – Yuck
@Yuck: ну, тогда назовите его 'OrderHead' или что-то ..... –