gpt4 book ai didi

php - 为多个用户存储 100 节课的状态的优雅/有效方法是什么?

转载 作者:太空宇宙 更新时间:2023-11-03 11:11:39 26 4
gpt4 key购买 nike

我正在使用 JavaScipt、jQuery、PHP 和 MySQL 开发一个包含约 100 个类(class)的应用程序。我正在尝试想出一种有效的方法来存储每个用户在类(class)中的进度状态,而不必过多地查询 MySQL 数据库。

目前,我认为最简单的实现是为每个用户创建一个表,然后将每节课的状态存储在该表中。唯一的问题是,如果我添加新类(class),我将不得不更新每个用户的表格。

我考虑的第二个实现是将每节课存储为一个表,并在其中记录完成该课的每个用户的用户 ID - 但随后生成状态报告(用户完成了哪些课,他们做得如何,等)将意味着从 100 个表中提取数据。

我缺少明显的解决方案吗?您将如何存储您的用户在 100 节课中的进度,以便快速而简单地生成显示他们的进度的状态报告。

干杯!

最佳答案

我建议的表结构是保留一个包含非唯一字段 useridlessonid 以及相关进度字段的表。当您想要用户 x 在类(class) y 上的进度时,您可以这样做:

SELECT * FROM lessonProgress WHERE userid=x AND lessonid=y LIMIT 1;

您不必担心性能问题,除非您发现它确实是一个问题。为每个用户或每节课都有一个表是不好的解决方案,因为数据库中的表数并不一定是动态的。

关于php - 为多个用户存储 100 节课的状态的优雅/有效方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8115699/

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