Разработка базы данных инвентаризации [закрыто]

Это вопрос не о «программировании» (не относится ни к какому языку или базе данных), а скорее о дизайне и архитектуре. Это также вопрос типа «Какой лучший способ сделать X». Я надеюсь, что не вызывает много "религиозных" противоречий.

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

Несколько лет назад я начал работать в этой компании и унаследовал систему, которая отслеживает запасы. Но количество сохраняется в поле. Когда запись зарегистрирована, полученное количество добавляется в поле количества для позиции. Когда товар продан, количество вычитается. Это привело к расхождениям. На мой взгляд, это не правильный подход, но предыдущие программисты здесь клянутся этим.

Я хотел бы знать, есть ли консенсус относительно того, как правильно разработать такую ​​систему. Кроме того, какие ресурсы доступны, печатные или онлайн, чтобы получить рекомендации по этому вопросу.

Спасибо

Ответы на вопрос(3)

Ваш ответ на вопрос