“..引用空值或瞬态值。” (糟糕的设计?) - 两列中至少有一列不能为空

时间:2012-08-20 20:12:33

标签: database nhibernate model mapping fluent

品牌有图像(徽标 - 不可为空)。产品有很多图像。图像必须 品牌或产品,但我不能在任何一个字段上使用“不可为空”,因为图像只属于其中一个?

你会如何描绘这种关系?

品牌1 ---- 1图片* ---- 1产品

1 个答案:

答案 0 :(得分:0)

所以无论如何,图像总会有品牌或产品?一个品牌可以有多个图像吗?在大多数情况下,品牌或产品是与Image的一对多关系。

意味着任何特定时间的产品或品牌都可以拥有图像。

我不确定你的措辞有多大意义。但通常在大多数情况下,Image表将是一个查找表,并且必然与Product或Brand有关系,但Brand或Product将具有ImageID列,因此是一对多关系。