Помощь в разработке дизайна базы данных продаж
Отказ от ответственности: я новичок в области базы данных.
Я пытаюсь создать базу данных в PostgresQL, которая будет отслеживать запасы вместе с записью продаж и покупок товаров. Я намерен использовать эту базу данных в качестве модели с EF и WPF, используя подход MVVM.
У меня есть таблица, в которой записываются текущие запасы для каждого товара. Моя проблема заключается в том, чтобы корректировать этот запас каждый раз, когда происходит продажа или когда мы покупаем сырье.
Что я уже пробовал:
Я придумал три основных способа решения этой проблемы.
Первый-триггер: каждый раз, когда запись вставляется в таблицу продаж или таблицу покупок, запас корректируется соответствующим образом.
Второй - сложить все продажи, а затем сложить все наши покупки и затем найти разницу между ними. Это создает проблему - если мы удалим старые записи о покупках или продажах, расчет запасов будет неправильным.
Третья идея состояла в том, чтобы инкапсулировать запись каждой вставки данных в столбец продаж или покупок с помощью хранимой процедуры.
Не могли бы вы сказать мне, какой подход является лучшим?