首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >实体关系图:什么是复合ID .Net核心6

实体关系图:什么是复合ID .Net核心6
EN

Stack Overflow用户
提问于 2022-04-28 09:57:48
回答 1查看 222关注 0票数 0

我在数据库中有3个表,我想知道复合主键是什么。

表1称为超级英雄表2称为超级英雄类别,表3称为超级英雄传记

我想要创建一个ERD (实体关系图)

属性键应该检索json文件并根据需要显示超级英雄类别,这可能吗?还是我完全错了?

这是.net核心项目要学习的内容

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-04-28 12:31:26

组合密钥很少与技术ID一起使用。它们在自然键中更常见。

有超级英雄的类别。您将为这些类别提供一个表,并且可能会给每个类别一个数字,这样您就可以用它唯一地标识一个类别。您也可以使用类别名称作为唯一标识符,但是如果您想在某一时间使用不同的名称,例如将“飞行能力”重命名为“飞行能力”,则会出现问题。

还有超级英雄。您将为他们有一个表,每个超级英雄将得到一个ID或简单地识别他们的唯一名称。这两列中的一列将是主键。假设你用超级英雄的名字。

由于没有单独的表将超级英雄类别映射到超级英雄,所以在超级英雄表中将有类别ID,因此每个超级英雄都属于一个类别。

如果您希望超级英雄属于多个类别,则需要一个桥接/关联表。在ERM中,您可以只显示超级英雄和类别表,并使用m:n关系箭头或显示具有1:n关系的所有三个表。这只是一个您想要在图中显示的粒度问题。

现在假设你的传记表可以包含每个超级英雄的多部传记。这意味着在传记表中必须有超级英雄的名字来建立这种关系。这张表中一行的唯一关键可能是超级英雄和传记作者的结合。两列联合标识一行。一个合成钥匙。如果您将此作为主键,则将有一个复合主键。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72041664

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档