我有一个问题可以总结如下:
假设我正在实现一个员工数据库。对于每个人取决于他的职位,应填写不同的字段。因此,例如,如果员工是软件工程师,我有以下列:
Name
Family
Language
Technology
CanDevelopWeb
如果员工是业务经理,我有以下列:
Name
Family
FieldOfExpertise
MaximumContractValue
BonusRate
如果员工是销售人员,那么其他一些列等等。
如何在数据库模式中实现这一点?
我认为的一种方法是有一些相关的表:
核心表:
Name
Family
Type
如果 type 是 one 则员工是软件开发人员,因此剩余信息应在表中SoftwareDeveloper
:
Language
Technology
CanDevelopWeb
对于业务经理,我有另一个包含列的表:
FieldOfExpertise
MaximumContractValue
BonusRate
这种结构的问题是我不确定如何在表之间建立关系,因为一个表与一列上的多个表有关系。
如何执行关系完整性?