Inventory database design [closed]

I have seen both approaches at my current company and would definitely lean towards the first (calculating totals based on stock transactions).

If you are only storing a total quantity in a field somewhere, you have no idea how you arrived at that number. There is no transactional history and you can end up with problems.

The last system I wrote tracks stock by storing each transaction as a record with a positive or negative quantity. I have found it works very well.


  • The Data Model Resource Book, Vol. 1: A Library of Universal Data Models for All Enterprises
  • The Data Model Resource Book, Vol. 2: A Library of Data Models for Specific Industries
  • The Data Model Resource Book: Universal Patterns for Data Modeling

I have Vol 1 and Vol 2 and these have been pretty helpful in the past.