MySQL中用户组的最佳体系结构?

MySQL中用户组的最佳体系结构?,mysql,database-design,Mysql,Database Design,概述: 我正在尝试为一个英语教学网站创建一个用户组系统 每个用户组都有一个分配给它的教师帐户,最多可以有五个学生帐户 为此,我们创建了三个表:“教师”、“学生”和“小组” 我还有许多页面要创建/查看/分配给组,如下面的屏幕截图所示: 以下是我们表格的结构以及它们如何相互作用,以确保学生和教师得到正确分配: 1-因此,首先我们创建一个组(+新组页),将其添加到组表中,该组具有名称、唯一ID和唯一教师ID,这些ID取自教师表 2-然后,我们将最多五名学生添加到小组(分配学生页面)。学生被视为“在

概述:

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

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

为此,我们创建了三个表:“教师”、“学生”和“小组”

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

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

1-因此,首先我们创建一个组(+新组页),将其添加到组表中,该组具有名称、唯一ID和唯一教师ID,这些ID取自教师表

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

问题:

1-我对数据库体系结构和总体结构的思考是否正确,或者我是否缺少一些明显的东西

2-由于一名教师可以被分配到多个组,我需要能够看到一名教师被分配到的所有组,我应该通过使用分隔符将所有组连接到一个表“td”单元格中,还是应该为每个组单独设置一行。。。下面的图片应该能更好地解释它

如果您对此事有任何意见,我们将不胜感激:-)。

1。)根据您的要求,这似乎是正确的

你和老师有一对多的关系->小组,然后 与小组->学生的一对多关系

2.)我不知道你在问什么,这取决于你想如何显示这些数据。看来你知道怎么取它了…

1)主要是。。。见第2条

(p>2)不将ID连接成一列:(这是一对多对多的关系,很容易用“中间人”来解决。.基本上,您创建了一个表
TeacherGroup
,其中包含列
TeacherGroupID
TeacherID
GroupID
,现在您可以将同一名教师添加到多个组中

然后,回答有关教师和组的问题只需从
TeacherGroup
表上的
Teacher
Group
表中进行简单联接即可。这样,您就可以回答诸如该教师或所有这些教师所在的组以及该组或这些组中的哪些教师之类的问题