这不是与特定语言相关的问题,而是与处理库存的正确架构方法有关的问题。
考虑以下存储软件的结构:
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)