所以我在为我的数据库提出实体关系方面遇到了一些麻烦,但是我的一些设计过程是最低水准的。将创建数据库,以便学生可以有多对多关系的课程(我知道很明显)。数据库需要每天跟踪作业和注意力。但是,课程可以是一周中的一天或多天。
顾问 - >(顾问,名字,姓氏,电话,电子邮件)
students->(studentid,firstname,lastname,phone,email)
courses->(courseid,description,startdate,statetime,room)
studentscourses->(studentid,courseid)
我在这里陷入困境,我正在考虑创建一个日历表,但我如何将数据与家庭作业表和出勤相关联。如果有任何建议值得批评,欢迎提出。
答案 0 :(得分:1)
您需要创建更多实体才能实现高效的数据库设计。一种解决方案是:
Attendance(id,student_id,course_id,date)
Homework(id, course_offering_id, date) -- course_offering_id: primary key of student courses
-- since many to many relation lies between homework and student
Homework_Student(id, homework_id, student_id)
答案 1 :(得分:0)
你可以扩展studentcourses表,添加更多列,如
Studentcourses->(studentid,courseid,考勤(布尔),日期时间,作业(文本),previoushomework(布尔))
如果学生出现在课程安排的特定日期和时间,则会认真学习。datetime->课程的日期和时间
homework->这显示了学生的作业
previoushomework->当学生完成上一次的作业时,这将是真实的
这是您可以在此项目中使用的最简单,最紧凑的桌面设计,您还可以根据需要制作其他关系表
希望可以解决您的问题