[英]How to setup database tables with multiple similar attributes
有产品,部分和属性。
每个属性最多可以有5个或6个选项。
示例:电源
10 Volt
15 Volt
20 Volt
总共大约有10个产品,每个产品最多应用17个属性。
示例:产品1
power - 10 volt
color - red, yellow
link - online, offline
您将如何设置表格? 我很沮丧 我当时在考虑为每个属性分配一个单独的表,然后是一个产品表和一个部分表。
产品表将容纳与它和各节相关的属性的外键。 这有意义吗?
我当时在考虑为每个人物准备一个单独的桌子,
不要为每个属性创建单独的表,这不会满足您的目的。
为每个产品,部分和属性创建单独的表,并使用PK和FK相应地将它们联接。
这很普遍。 您可以拥有一个基本产品表,其中包含一些常规属性,例如...
Product ------- ProductID ProductName Description Price
然后,您可以将表格扩展为其他产品类型。 所以你可以有一张桌子
ProductElectrical ----------------- ProductID Voltage Watts BatterySize
要么...
ProductApparel --------------- ProductID Color Size Material
然后,在需要时,您可以像这样将扩展表连接到核心产品表...
select p.ProductID, p.ProductName, p.Description, pa.Color, pa.Size, pa.Material from Product p join ProductApparel pa on pa.ProductID = p.ProductID where pa.Size = "XXL"
这样,您可以在整个系统中使用紧凑的核心产品表。 当您需要查看额外的属性时,可以轻松地将它们加入核心产品表。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.