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