gpt4 book ai didi

mysql - 数据库设计 - 表关系 - 更喜欢最小关系或 "time saving"关系

转载 作者:行者123 更新时间:2023-11-30 00:12:07 25 4
gpt4 key购买 nike

寻找关于应在数据库表之间定义关系的位置的意见和反馈。具体来说,是更喜欢在概念上有意义且需要使用的直接关系,还是更喜欢使用尽可能少的关系。

例如,在此图中:

enter image description herea_g 关系确实需要存在。 d_g 关系在概念上是有意义的并且会经常使用。我的问题是是否存在这样的关系,或者是否忽略它而不是选择 d->c->b->a->g。

更多的关系有助于提高绩效,但在我看来,这会增加不一致的风险。它增加了 d->g 可能得到与 d->c->b->a->g 不同的 g 的风险。 (显然,这种特殊的设计规定 g 无论哪种方式都是相同的,但我说的是如果出现严重错误 - 那些“到底是怎么发生的”情况。)

同样,在使用 d 时,通常需要在不需要访问 c 和 b 中的数据的情况下访问 a。是否应该建立一种 a_d 关系,或者开始创建这些“节省时间”的关系是否会导致失控?

最佳答案

请考虑增加表组的填充或维护难度,这些表具有太多的引用完整性约束,特别是在存在诸如循环之类的依赖关系的情况下。您必须在文档中提供表的顺序,填充或维护时必须遵循该顺序。一个危险的替代方案是暂时关闭部分或全部引用完整性约束,并且不要忘记在维护后再次激活它们。

关于mysql - 数据库设计 - 表关系 - 更喜欢最小关系或 "time saving"关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23963194/

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