gpt4 book ai didi

mysql - 1-many 的子表可以是另一个 1-many 的子表的父表吗

转载 作者:行者123 更新时间:2023-11-29 20:42:55 27 4
gpt4 key购买 nike

1)GroupParent1表(Gid,值)(111,衬衫)

2)GroupChild1(Gcid, Gid, value) (1,111, blue)(2,111,cotton) 即存储产品的属性,因此该表中的一组属性可以有一行或多行。

问题:另一个名为 3)Price 的表应使用重新设计/PK-FK 或两者都存储上面表 2 中存在的“仅”组的价格。

像蓝色一样,棉质衬衫可以有一个价格,或者红色,丝绸衬衫可以有另一个价格。

简而言之,我们如何强制pk-fk约束或重新设计它们,以便只有当且仅当其他两个表都有数据时才能创建价格。

我可以将表 1 中的 Pk 放入任意一个表中,并且可以强制执行引用约束。但我无法使用表 2 来强制表 3 只有在表 2 中创建了组时才具有条目。由于表 2 有组,因此我无法执行此操作,因为一个组有多行,即本例中的 2 行。

最佳答案

您有两种方法可以做到这一点:

  • 第一个(如果GroupChild1表的一个元素只能有一个元素),您可以向“GroupChild1”添加一列以保留价格。

  • 第二个(如果 GroupChild1 表的一个元素可以有一个或多个价格),您应该创建一个名为“Prices”的表,并与“GroupChild1”有关系。

    [价格] -- {id, Price, groupchild1_id}

希望对你有帮助。

关于mysql - 1-many 的子表可以是另一个 1-many 的子表的父表吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38542762/

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