Это не вопрос, связанный с конкретным языком, а скорее о правильной методологии архитектурной обработки инвентаря.
Рассмотрим следующую структуру для хранения программного обеспечения:
platforms (platformID*, platformName)
titles (titleID*, titleName)
ИНиже приведена таблица столяр для уникальных продуктов
products (platformID*, titleID*, releaseDate, notes)
. Ниже приведена таблица, в которой я хотел бы отслеживать свой инвентарь
inventory (platformID*, titleID*, quantityAvailable)
В примерах, которые я видел, другие создалитаблица, в которой каждая уникальная копия программного обеспечения хранится в отдельной строке следующим образом:
software(softwareID*, softwareTitle)
inventory(inventoryID*, softwareID*)
Я хотел бы знать, какой подход предпочтительнее?Должен ли я создать инвентарный идентификатор и, таким образом, строку для каждой уникальной копии программного обеспечения:
inventory(inventoryID*, platformID*(fk), titleID*(fk))
или использовать вместо нее таблицу, в которой хранится количество, например:
inventory(platformID*(fk), titleID*(fk), quantityAvailable)