sql - 为网站的每个用户(数千)制作一个包含数千行的 SQL 表?

标签 sql

我们正在构建一个 eLearning MultipleChoice 工具,成千上万的用户将在其中完成我们的测试。我们已经有数千名订阅者参加了我们的其他研讨会等,因此很可能会有数千名订阅者也完成 MC 测试。

现在,我们需要跟踪每个用户回答的每个问题,他花了多长时间,是否正确(经过多少次尝试),如果不正确,他给出了哪个错误的答案等。真的很多数据。

现在,我们将有数以千计的问题和数以千计的用户。由于每个问题至少有 4 个答案,而且我们还想跟踪给出的错误答案,我的问题是:在这种特殊情况下,为每个用户设置一个表格是否有意义?

我知道这里已经问过每个用户的表格问题(例如 here ),但我觉得这真的是一个不同的案例。

那么:一张有数百万行的表还是有数千行的数千张表?

最佳答案

每个用户拥有一个数据库对象是没有意义的。如果您适本地设计表和数据库结构,则可以轻松管理包含一百万行的表。

每个用户的表将非常难以管理,这不是关系数据库的通常设计方式。

为用户创建一张表并遵守 RDBMS 最佳实践。实现查询调优,并确保表上有适当的索引,以及更新的统计信息。

关于sql - 为网站的每个用户(数千)制作一个包含数千行的 SQL 表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7796402/

相关文章:

使用 MySQL Workbench 添加外键时出现 MySQL 错误 1064

mysql - Sql 查询获取 Rails 中最受欢迎的帖子

c# - Entity Framework 日期时间错误中的存储过程

mysql - 我还能做什么来优化这个查询?

sql - T-SQL : Selecting Column Based on MAX(Other Column)

c# - nhibernate 在 where 子句中将 smallint 转换为 int

sql - 从多个数据源导入 SSIS

sql - 无法使用 group by 获得正确的 SUM

c# - 主键和唯一键分开异常处理 | ASP.NET C#

sql - MYSQL:如何删除第一行?