我正在设计一个当前看起来像这样的表:
Container
ContaienrId
ParentContainerId
LotsOfOtherColumns
这个想法是容器可以有一个父级(它又可以有一个父级......)。此外,多个容器可能具有相同的父级。
我可以将 ID 粘贴在那里,但我希望可以通过实体框架访问父级。为此,我需要一个外键。(如果为 ParentContainerId 输入了无效数字,我还希望保护 FK 违规。)
但是当我尝试将外键放在这些列上时,我得到了这个错误:
表 'Container (Container)' 中的列与现有的主键或 UNIQUE 约束不匹配。
我明白了,我不能使用 ParentContainerId 除非我对其施加 UNIQUE 约束。但是几个容器可以有同一个父容器,所以这是行不通的。
有没有办法使用一个表并具有外键父子关系?