0

好的,所以我不是最擅长数据库(在这种情况下是 MySQL),但我已经到了那里。

我在我的数据库中遇到了与 2 个表相关的问题。我有一个学生表和一个班级表。这种关系(在纸上)将是多对多的。IE:一个学生可以是多个班级的一部分,一个班级可以有很多学生。

目前,我只有两张表,学生和班级,但这似乎还不够。我目前唯一的解决方案如下:

添加一个额外的表,具有 2 个字段的类:ClassID(与 Class.ClassID 相关)和 StudentID(与 Student.StudentID 相关)

现在我相当肯定这会起作用,但是在添加/检索/更新记录时,我担心我会有点迷失。在进行这些查询时会有某种连接吗?

如果这不是最好的方法,那会是什么?如果可能的话,我想将所有表格操作保留在 PHPMyAdmin 中的 GUI 中。

谢谢!

4

2 回答 2

2

据我所知,处理具有多对多关系的表需要一个额外的表,他们称之为JUNCTION TABLE。看看它,你的设计看起来不错。

于 2013-06-24T10:56:46.317 回答
1

连接表正是它的完成方式。你的方法是对的。

要检索班级的所有学生记录,只需执行以下操作:

Select s.* from students s, class c, studcls sc where s.id=sc.student and c.id=sc.class and c.title='Math';
于 2013-06-24T10:59:11.433 回答