我正在尝试在我的数据库中实现一些本地化。
它看起来像这样(前缀只是为了澄清)
TBL-分类
ID
语言
名称
TBL-文章
ID
类别ID
现在,在我的tbl-Categories中,我希望主键包含ID和语言,因此ID和语言的每个组合都是唯一的。在tbl-Articles中我想要一个外键来引用类别中的ID,而不是语言,因为我不想将文章绑定到某种语言,只有类别。
当然,我无法在部分主键上添加外键。我也不能只在类别的ID上拥有主键,因为那时只能有一种语言。没有主键完全禁用外键,这也不是一个很好的解决方案。
您是否有任何想法如何以优雅的方式解决这个问题?
感谢。
答案 0 :(得分:1)
鉴于这种情况,您需要在类别和语言之间建立一对多的关系。创建3个表:
您不必在文章表上执行任何操作,因为ID和CategoryId确定文章可以属于某个类别但不依赖于语言。
HTH