【问题标题】:MySQL database structure for multiple users with 100s to 1000s of unique rows each用于多个用户的 MySQL 数据库结构,每个用户有 100 到 1000 个唯一行
【发布时间】:2013-07-05 14:34:24
【问题描述】:

我目前正在开发一个网站,允许用户管理他们的“食品储藏室”、“食谱书”、“膳食计划”和“购物车”中的物品。由于这些表中的每一个都可以容纳大量独特的项目,并且每个项目对用户来说都是唯一的,因此为每个用户创建新表或简单地在每个表中的每个条目中记录用户的 ID 是否更有效?

我之所以问是因为我可以看到一个包含 1000 多个食品储藏室物品的表格,分布在 20 个用户中,通过 id 搜索所有这些物品可能比简单地找到该用户表格并显示所有结果更昂贵。

或者我什至没有考虑其他第三种选择?

感谢任何/所有帮助。如果需要更多信息,请询问。

【问题讨论】:

  • 有了适当的索引,一个表就可以了。
  • 永远不要按照你的建议去做。永远!
  • 而且每个用户的表会使编写跨所有用户的一般查询变得困难。你真的希望只有 20 个用户吗?
  • 一张桌子。呸!每个重要元素 1 个表格。
  • 好的,我收到消息了。哈哈。我没有接受过数据库方面的正规教育,感谢您的帮助(:

标签: mysql database performance database-design


【解决方案1】:

我将创建 1 个数据库,一个用于用户的表(其中包含他们的“唯一 ID”和元信息),然后为与唯一 ID 关联的每个区域(食品储藏室物品、食谱等)创建一个单独的表。

用户:

ID|Username|Password|RealName....
 1|Jojo    | *******|Joseph

食谱:

ID|Username|Name            |Ingredients    |Prep....
 1|Jojo    |Chicken Tarag.. | 1 pound of... |Prepare ....

Eazy-peazy。

【讨论】:

  • 从 cmets 实现的,但感谢您发布答案。希望这对未来的“Google 员工”有所帮助
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-07-23
  • 2011-09-08
  • 2012-08-08
  • 1970-01-01
  • 1970-01-01
  • 2020-08-03
  • 2018-10-01
相关资源
最近更新 更多