gpt4 book ai didi

mysql - 2 个表中的外键在第 3 个表中进行 PK

转载 作者:行者123 更新时间:2023-11-29 11:22:16 25 4
gpt4 key购买 nike

enter image description here

您好,帐户表可以从 SA 和 CA 表中获取其值吗?字段 SA 和 CA 是帐户表中 FK 的约束?

逻辑要求我这样走,而不是相反。即,不要首先将帐户构建为 super 表,然后从那里创建其他两个。

谢谢。

最佳答案

正如您所建议的,没有继承 super 表的概念。它不是面向对象编程。因此,请使用外键约束创建表并手动插入数据。

外键值可以为 NULL。虽然通常不是一个好主意。您可能希望使用 type 列将表格从 3 折叠到 2 或 1。

您可能不希望有帐户表。除了复制信息之外,它的目的还有什么?当然,它可以处理更多的粒度,但不要用不必要的表过度填充您的设计。

如果您坚持拥有单独的储蓄表和支票表以及帐户表,则使用 FK 实现帐户表的唯一方法是使用 NULL。而且,如前所述,不建议这样做。之所以?这就像说它一定是其中之一......除非我不在乎。我们应该关心我们的数据。

抵制使用 FK 的 NULL 的冲动。实现这一目标的一种方法是拥有一个帐户表,并加入其他表,知道只有其中一些表会成功。一个Conditional Join 。通过LEFT JOIN实现。

关于mysql - 2 个表中的外键在第 3 个表中进行 PK,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38722937/

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