Eth*_*han 5 mysql sql rdbms normalization
我有一个名为 的表assets,其中资产可以属于用户、团队或部门,也可能属于每个用户、团队或部门的多个。我的问题是资产变化很大,并且可能具有与每项资产不同的相关属性。
前任。这些可能是资产:
1.)
type:workbench
cost:200
vendor:Acme Co.
color:black
2.)
type:microscope
serial_no:BH-00102
purchase_date:1337800923
cost:2040
Run Code Online (Sandbox Code Playgroud)
对于数百到数千种不同类型的资产,这种情况可能会持续下去。
如何以易于查询的标准化方式存储此类数据,而无需在每次添加新资产类型时更改表?有些字段也存在于所有资产中,例如成本。
到目前为止,我认为我应该:
assets
id,cost,purchase_date,asset_type_id
asset_types
id,name
division_assets
division_id,asset_id
user_assets
user_id,asset_id
Run Code Online (Sandbox Code Playgroud)
但我不知道将变化的数据放在哪里
我建议这样:
assets (
id
asset_type_id
vendor_id
cost
purchase_date
)
asset_poperties (
id
asset_id
asset_property_type_id
value
)
asset_property_types (
id
property_type
)
asset_types (
id
asset_type
)
vendors (
id
vendor
)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10418 次 |
| 最近记录: |