gpt4 book ai didi

database-design - 具有严格 1-2 关系的实体

转载 作者:行者123 更新时间:2023-12-02 04:23:14 25 4
gpt4 key购买 nike

我试图了解当关系具有确切性质时,我们如何建模和定义两个实体的基数。比方说 1 到 2。

例如,如果我有实体“旅程”和“位置”。现在,每个旅程都有 2 个位置:起始位置和结束位置。

那么我们如何建模这种关系并将基数放在每个实体(旅程和位置)上。

简单的谷歌搜索会产生简单的 1-1、1-m 和 m-n 关系解释。但是我们如何将它们限制为正好 1-2 呢?

最佳答案

您的示例不是“1 到 2”,而是“N 到 2”,您只需通过两个外键即可对其进行建模:

enter image description here

(可能还需要进行检查以确保起始位置和结束位置不同。)


如果你真的想要“1对2”,从某种意义上说,任何给定的位置总是与一个旅程相连,你就必须做这样的事情......

enter image description here

...并使用支持延迟约束的 DBMS,这样在插入新数据时就可以解决先有鸡还是先有蛋的问题。

在不支持延迟约束的 DBMS 上,您可以将起始位置和结束位置设置为 NULL,但这样就不再是“1 到 2”,而是“1 到 0..2”关系。

关于database-design - 具有严格 1-2 关系的实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28771495/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com