首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >最好是为不同的商店创建不同的表,还是有一个带有列的表来指定哪个站点?

最好是为不同的商店创建不同的表,还是有一个带有列的表来指定哪个站点?
EN

Stack Overflow用户
提问于 2021-05-02 15:52:09
回答 1查看 139关注 0票数 1

我正在为不同城市的商店开发mssql。最好是每个城市都有一张桌子,还是一张桌子上的所有房子。我也不希望来自不同城市的用户访问来自非他们城市的数据。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-05-02 17:48:53

SQL被设计用来处理大表,非常大的表。它不是用来处理无数张小桌子的。您的问题的明确答案是,一个特定实体的所有示例都应该放在一个表中。这有很多很好的理由:

  • 您希望能够编写一个查询,该查询将返回任何城市或所有城市的数据。如果数据位于一个表中,则这很容易;如果数据位于多个表中,则很难。
  • 您希望通过选择正确的索引和数据类型以及收集统计信息和删除索引等来优化查询。应该正确声明为什么要通过乘以tables?
  • Foreign密钥关系的数量来乘以工作。如果外键可能是多个表,则不能这样做。
  • 大量的小表会导致大量部分填充的数据页,这只会使数据库更大,速度更慢。

我可以继续。但是现在您可能已经意识到,每个实体只有一个表是正确的(至少在大多数情况下是这样)。

限制用户只在一个城市查看数据的问题可以通过多种方式处理。最常见的可能是简单地使用视图。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67358334

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档