gpt4 book ai didi

c# - 特别注意/设置特别命中几个表的数据库

转载 作者:搜寻专家 更新时间:2023-10-30 20:22:07 24 4
gpt4 key购买 nike

我怀疑许多与业务相关的软件旨在管理一组特定的信息;客户、订单、销售线索或产品和/或组合。在我的大部分经历中都是如此。所有其他表格通常都是支持主要表格的数据。

如果不是这种情况,那么暂时假设是这样:) 因为在我的例子中,我们的数据库中实际上只有 1-2 个主表(大约 20-30 个);即客户表。

是否对这些类型的表格应用了特殊的注意/设置,以确保表格更易于管理或保持合理的大小?由于性能或其他原因,我现在还没有处于需要对此做某事的地步,而且我可能暂时不会,但当时机成熟时,我想知道从哪里开始。

我已经标记了 mysql,但实际上,关于与其他 RDBMS 一起使用的其他技术的任何信息仍然有用。

最佳答案

在考虑将有限的优化时间花在哪里时,将注意力集中在关键表上是合理的。基本上,您要确保真正在频繁使用的表上执行表设计的所有良好做法。

  • 您想确保 primary key很好。通常这将是一个自动编号整数。另外,请确保聚簇索引基于此键。 (这是你已经知道的基本内容,但我必须把它弄清楚。)
  • 用与查找表相关的数字替换重复数据,以提高性能和数据完整性
  • 使用正确的数据类型,但尽可能小,但不要在大小上冒险。 (这没有很多其他事情那么重要,只要您没有在数字字段所在的地方到处都是巨大的 char 字段。)
  • Indexes !你必须拥有它们。在将它们作为整体方案的一部分进行设计时考虑一下,但它们也可以在以后很好地应用以获得更好的效果。了解覆盖索引。 客户 听起来像是被查询的对象比更新的对象多得多。如果是这样,请对您的索引感到害羞。

但是,尽管到目前为止使用最频繁的是少数表格,但您的整体设计方案仍然是最重要的

  • 有你的数据Normalized .这是一切的关键。如果您最终得到大量表,其中到处都是看似相关的数据,请不要担心。更糟糕的是将不是 相当 1 对 1 的数据塞入现有表中。现代数据库擅长处理多个表;但他们不能错误地相互关联数据。
  • 拥有良好、简单的外键关系。任何表的第一列通常应该是一个自动编号键,其名称类似于表(Customers 表的 CustomerID)
  • 最重要的是让你的 table 命名得当

您问的这个问题实在是太大了。我总结说要专注于关键表,但最重要的是该表与其他表的关系。

关于c# - 特别注意/设置特别命中几个表的数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2045047/

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