gpt4 book ai didi

mysql - 哪个更高效 : Multiple MySQL tables or one large table?

转载 作者:IT老高 更新时间:2023-10-28 12:51:14 25 4
gpt4 key购买 nike

我将各种用户详细信息存储在我的 MySQL 数据库中。最初它是在各种表中设置的,这意味着数据与 UserIds 相关联,并通过有时复杂的调用输出以根据需要显示和操作数据。建立一个新系统,将所有这些表格组合成一个相关内容的大表格几乎是有意义的。

  • 这是帮助还是阻碍?
  • 调用、更新或搜索/操作时的速度注意事项?

这是我的一些表结构的示例:

  • 用户 - 用户 ID、用户名、电子邮件、加密密码、注册日期、ip
  • user_details - Cookie 数据、姓名、地址、联系方式、隶属关系、人口统计数据
  • user_activity - 贡献、上次在线、上次查看
  • user_settings - 个人资料显示设置
  • user_interests - 广告可定位变量
  • user_levels - 访问权限
  • user_stats - 命中、统计

编辑:到目前为止,我对所有答案都投了赞成票,它们都具有基本上回答我问题的元素。

大多数表具有 1:1 的关系,这是对它们进行非规范化的主要原因。

如果表格跨越 100 多列,而这些单元格的大部分可能保持为空,是否会出现问题?

最佳答案

多表有以下帮助/案例:

(a) 如果不同的人要开发涉及不同表的应用程序,那么拆分它们是有意义的。

(b) 如果你想在数据收集的不同部分给不同的人不同的权限,拆分它们可能更方便。 (当然,您可以查看定义 View 并适本地对其进行授权)。

(c) 为了将数据移动到不同的地方,尤其是在开发过程中,使用可以减小文件大小的表格可能是有意义的。

(d) 当您针对单个实体的特定数据收集开发应用程序时,较小的占用空间可能会给您带来舒适感。

(e) 有一种可能性:您认为的单值数据将来可能会变成真正的多值。例如到目前为止,信用额度是一个单值字段。但是明天,您可能决定将值更改为(日期从、日期到、信用值)。拆分表现在可能会派上用场。

我的投票将支持多个表 - 数据适当拆分。

祝你好运。

关于mysql - 哪个更高效 : Multiple MySQL tables or one large table?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1125004/

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