如何在Instructors_courses表中表示日期和时间

时间:2016-11-04 23:37:09

标签: sql-server-2008 database-design relational-database

问题

我需要制作设计数据库(ERD)来显示每位教师的时间表

包括

当然(周六或周一等)

哪个时间会给出课程(从下午12点到下午3点)。

它将给出什么样的课程(c#或SQL)。

示例

教练马丁在星期一和星期六的12点到03点之间提供课程c#

SQL在周日和周三的下午12点到晚上03点。

详情

所以我设计了以下表格:

教师表(InstractorID,InstractorName)

课程表(CourseID,CourseName)

Instructors_courses表(instcourseID,InstractorID,CourseID)

教师表和课程表之间的关系很多都是如此 我做另一个表是Instructors_Courses表。

我的问题是

1-如何表示每个课程的日期和时间

我可以为时间和表格添加表格并与

建立关系

Instructors_courses表通过添加日期ID和时间ID(一对多)

或者从用户界面进行编程。

2-课程开始日期和课程结束日期这两个字段如何表示

表Instructors_courses表。

我可以添加,但它会重复,每个课程都是正确的或什么。

1 个答案:

答案 0 :(得分:0)

  1. 您可以使用自动增量或某些编码模式。例如,MON8A10A表示周一上午8-10点。如果您只有一间教室,这只会起作用。如果房间也有代码,您也可以添加(MON8A10AR1)。这样你就可以管理课程,教师和他们的时间段。您也可以将时间开始时间,结束时间,日期和课堂添加为列。

  2. 在course_instructor表中添加课程开始日期和结束日期并不明智,因为它会复制数据。但是,您的方法会根据您拥有的数据量和系统的响应性而有所不同。如果您有大量数据并且需要更好地保存存储以便为其创建单独的表。但是你需要与之建立关系。拥有多个关系会降低检索结果的速度。但那是很长的关系。如果你只有2或3,那就不重要了。