我正面临以下数据库设计问题。 我有三个存储资产信息的表格和一个用于退役资产的表格。应该与多个父键关联的外键
车辆
ID. Primary key
Name.
Model.
Manufacture_year.
Manufacture _name.
Engine _size.
Price.
IT
ID. Primary key
Name.
Type.
Operating_system.
License_size.
price.
家具
ID. Primary key
Name.
Type.
Color.
price
retired_asset
Asset_ID. // I need to link this colum to the ID column for either the vehicle, IT or furniture table.
Retired_reason.
Date
所以我有以下两个问题: -
由于每个资产具有不同的列和不同的业务逻辑。那么,我的方法是将每种资产类型存储在单独的表格上是否是正确的方法
在表,我怎么可以链接foreign_key
asset_id
到ID
列无论是在汽车,IT或家具表?
在此先感谢您的帮助。
你不能这样做。外键**总是**引用**正好一个**(并且只有一个)表。因此,您需要在'retired_asset'表中的'vehicle_id','furniture_id'和'it_id'外键,并引用相应的表。在'retired_asset'中的任何一行中,只有其中一个可以被填充。 –
向其引入'Asset'表和子类型'Vehicle,Furniture,IT'。将'RetiredAsset'链接到'Asset'。示例http://stackoverflow.com/search?q=user%3A196713+subtype –