Database design 需要数据库设计帮助

Database design 需要数据库设计帮助,database-design,normalization,Database Design,Normalization,我需要帮助建立简单的数据库结构。有点卡住了 这是我正在尝试的 班级指系+学期。例如,电子工程半工半读、电气工程Sem II。。等等 学生在课堂上; 班级有一组明确的科目; 小组由多个科目组成 类和主题,2个实体依赖于同一主题组实体。这不是三元关系吗 我制作这张图片是为了让图片更清晰。 [P=主键;F=外键;箭头并不表示一对多/多对多等。它们只是显示引用的内容] 我被卡住了,因为我无法两次引用GroupId 我应该如何修改此结构 - 谢谢 学生 班级 主题 关系 学生上课。一对多。一个班级

我需要帮助建立简单的数据库结构。有点卡住了

这是我正在尝试的

班级指系+学期。例如,电子工程半工半读、电气工程Sem II。。等等

学生在课堂上; 班级有一组明确的科目; 小组由多个科目组成

类和主题,2个实体依赖于同一主题组实体。这不是三元关系吗

我制作这张图片是为了让图片更清晰。 [P=主键;F=外键;箭头并不表示一对多/多对多等。它们只是显示引用的内容]

我被卡住了,因为我无法两次引用GroupId

我应该如何修改此结构

- 谢谢

  • 学生
  • 班级
  • 主题
关系
  • 学生上课。一对多。一个班级涉及许多学生
  • 以课堂为准。一对多。一个班级涉及许多科目
桌子 学生 栏目:

  • studentId—student表的主键
  • 关于sutdent的东西(一些列)
  • classId—类表中的外键
主题 栏目:

  • 主题-主题表的主键
  • 关于主题的东西(一些列)
  • classId—类表中的外键
等级
  • classId—类表的主键
  • 关于课程的东西。和学生无关。关于这个问题我什么都不知道。学生没有外键。主题没有外键
询问 班上的学生 学生正在学习的科目
我想你需要介绍一个班级主题表。 这是行的准确示例吗

student
beth
john
mark

class
beths_and_johns_class bethssubject, johnssubject
marks_class markssubject

subject
bethssubject
johnssubject
markssubject

如果这是作业,请标记为作业。什么后端?还是仅仅写在纸上?谢谢你的回复。嗯,关系有点不同。一个学生对一个班级,但一个班级对许多学生。一节课对多个科目,一节课对一个科目。学生上课似乎没有问题。我不买另一个。一个学生有一个班,一个班有很多科目。”需要在2个关系中引用“1类”。如果能给出至少一个伪sql,这将帮助我快速理解。。理论上我不太懂。代码很好。@deb和Omie:当你真正指的是关系时,请不要使用关系这个词。它们是完全不同的概念。在关系数据库设计的上下文中,它们不应该被混淆!我看到您在两个表中引用了相同的主键列。如果这以前对我有用的话,我就不会问这个问题了。由于某种原因。。MySql在添加外键约束时不断抛出Errno-150。我会调查一下,如果这种情况再次发生,我会发布新的问题。到目前为止,我同意你的建议。谢谢你抽出时间。
select
    sub.subjectName
from
    student stu
    inner join subject sub on sub.classId = stu.classId
where
    stu.studentId = 'desired student id'
student
beth
john
mark

class
beths_and_johns_class bethssubject, johnssubject
marks_class markssubject

subject
bethssubject
johnssubject
markssubject