数据库 为功能学校设计一个简单的数据库
Posted
技术标签:
【中文标题】数据库 为功能学校设计一个简单的数据库【英文标题】:Database design a simple database for a functional school 【发布时间】:2013-04-05 02:10:19 【问题描述】:所以我在为我的数据库提出实体关系时遇到了一些麻烦,但是我已经完成了一些设计过程,是最小口径的。将创建数据库,以便学生可以有许多课程多对多的关系(我知道很明显)。该数据库需要每天跟踪家庭作业和出勤情况。但是,课程可以是一周中的一天或多天。
advisors->(advisorid, firstname, lastname, phone , email)
students->(studentid,firstname, lastname, phone, email)
courses->(courseid, description, startdate, statetime, room)
studentscourses->(studentid, courseid)
在这里我被卡住了,我正在考虑创建一个日历表,但是我将如何将数据与作业表和出勤率相关联。如果有任何建议是很好的批评,欢迎。
【问题讨论】:
这里问了一个类似的问题:***.com/questions/45242605/… 【参考方案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)
【讨论】:
【参考方案2】:你可以扩展studentscourses表来添加更多的列
Studentcourses->(studentid,courseid,attendence(bool),datetime,homework(text),previoushomework(bool))
如果学生在课程安排的特定日期和时间在场,则出勤率是真实的。
datetime->课程的日期和时间
homework-> 这显示学生得到的家庭作业
previoushomework-> 当学生完成上一次的家庭作业时,这将是真的
这是您在这个项目中可以拥有的最简单和最紧凑的表格设计,您还可以根据需要制作其他关系表格
希望能解决你的问题
【讨论】:
感谢您的帮助。我会看看它是如何工作的,但我认为我应该有更多的实体。简单但复杂的哈哈悖论以上是关于数据库 为功能学校设计一个简单的数据库的主要内容,如果未能解决你的问题,请参考以下文章