gpt4 book ai didi

mysql - MySQL 中用户组的最佳架构?

转载 作者:行者123 更新时间:2023-11-29 06:16:23 25 4
gpt4 key购买 nike

概述:

我正在尝试为英语教学网站创建一个用户组系统。

每个用户组都分配有一个教师帐户,最多可以有五个学生帐户。

为此,我们创建了三个表:'teachers'、'students' 和 'groups'

我还有许多页面可以创建/查看/分配给组,如下面的屏幕截图所示:

enter image description here

以下是我们表格的结构以及它们如何相互交互以确保正确分配学生和教师:

enter image description here

1 - 首先我们创建一个组(+ 新组页面),将其添加到组表中,该组有一个名称、唯一 ID 和从教师表中获取的唯一教师 ID。

2 - 然后我们将最多五名学生添加到组中(“分配学生”页面)。学生被认为是“在组中”,因为在学生表上,组名和 ID 分别添加到“group_name”和“group_id”列。

问题:

1 - 我对这里的数据库体系结构和一般结构的想法是否正确,或者我是否遗漏了一些明显的东西?

2 - 因为一个老师可以分配到多个组,所以我需要能够看到一个老师分配到的所有组,我是否应该通过将所有组连接到一个表“td”单元格中一个断行或者我应该为每个组单独一行......下面的图片应该更好地解释它......

enter image description here

任何关于此事的智慧将不胜感激:-)。

最佳答案

1) 大多数情况下……见第 2 条。

2) 不,不要将 id 连接成一个列 :( 。这是一个多对多的关系,可以很容易地用“中间表中的人”来解决。基本上你创建了一个表 TeacherGroup 与列 TeacherGroupIDTeacherIDGroupID 现在您可以将同一位教师添加到多个组。

然后,回答有关教师和组的问题所需要做的就是从 TeacherGroup 表到 TeacherGroup 表的简单联接。通过这种方式,您可以回答问题,例如这位老师或所有这些老师属于哪个小组。以及哪些老师属于这个或这些小组。

关于mysql - MySQL 中用户组的最佳架构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35684068/

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