现有A B C三个对象
定义 D 以 AId BId做联合主键,与A、B做外键
现在要定义 E,以D的主键DId(即 AId、BId)跟CId做主键,该如何定义呢?
尽量不要用联合主键做外键,因为这不符合关系数据库的范式要求(应该是第三范式吧,忘了)。
如果有确实有这种需求,可以再建一张表,专门负责关系映射,如:[F](FID, AID, BID, CID), 然后在[E]中,加一个FID,设置为[F]的外键。
一楼说的对,不要用联合主键做外键,也不要用联合主键,表里定义一个没有意义的Id列作主键
在表里再加一个额外的id作为主键
用一楼的方法,建一个关系映射表
Nice,学习了。
这家伙不给分的