gpt4 book ai didi

sql - 地址簿数据库设计 : denormalize?

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

我正在设计一个类似联系人管理器/地址簿的应用程序,但无法解决数据库设计问题。

在我当前的设置中,我有一个联系人,其中包含地址、电话号码、电子邮件和组织。所有联系人属性当前都是单独的表,与联系人表相关联。不用说,联系人可以具有任意数量的这些属性。

现在,如果我想将联系人读入应用程序,我会发现自己将所有这些表连接在一起。由于没有对相关表执行过滤器、反向查找、排序等,将相关字段作为 json 编码列表存储在 Contact 表的直接属性上不是更好/更简单的解决方案吗?

例如,不是一个带有 fk 到具有 3 个条目的电话号码表的联系人,只需对所有电话号码进行编码并将它们存储到联系人表的一个字段中?

任何见解真的很感激! (仅供引用,我正在使用 Django,尽管这并不重要)

最佳答案

您能保证您的应用程序永远不会增长到需要这些其他功能吗?你真的想把自己画到角落里,这样你以后就不能轻易支持这一切了吗?

通常,非规范化仅出于性能原因发生。然后,规范化数据的副本仍然保留用于实时工作,非规范化数据用于离线处理,其中有静态快照就可以了。

习惯于编写连接。这就是 SQL 的工作方式。必须这样做并不意味着有什么问题。

关于sql - 地址簿数据库设计 : denormalize?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4514955/

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