📜  DBMS中的关系架构

📅  最后修改于: 2021-08-24 16:47:34             🧑  作者: Mango

关系模式定义关系的设计和结构,就像它由关系名称,一组属性/字段名称/列名称组成。每个属性都有一个关联的域。

有一个名为Geeks的学生,她在读四年级的B.Tech,隶属于IT部门(1号部门),卷号为1601347。她由S Mohanty夫人督导。如果要使用数据库来表示此信息,则必须创建一个学生表,并将姓名,性别,学位,年份,部门,部门编号,工作卷编号和代理人(顾问)作为属性。

student (rollNo, name, degree, year, sex, deptNo, advisor)

笔记 –
如果我们创建数据库,还可以记录其他学生的详细信息。

同样,我们有IT部门,部门ID为1,由Sujata Chakravarty女士担任部门主管。我们可以拨打部门电话0657 228662。

该部门和其他部门可以通过部门表来表示,具有部门ID,名称,住所和电话作为属性。

department (deptId, name, hod, phone)

学生选择的课程具有课程编号,课程名称,学分和部门编号。

course (coursId, ename, credits, deptNo)

教授将有一个雇员ID,姓名,性别,部门编号。和电话号码。

professor (empId, name, sex, startYear, deptNo, phone)

我们可以有一个名为enrollment的表,该表具有卷名,courseId,学期,年份和成绩作为属性。

enrollment (rollNo, coursId, sem, year, grade)

教学可以是另一个表格,其中将员工ID,课程ID,学期,年份和教室作为属性。

teaching (empId, coursed, sem, year, Classroom)

当我们开始课程时,有些课程在开始当前课程之前需要先完成另一门课程,因此可以通过具有前提课程和课程ID属性的前提表来表示。

prerequisite (preReqCourse, courseId) 

它们之间的关系通过以下关系图中的箭头表示,

  1. 这表示学生表中的deptNo与部门表中使用的deptId相同。学生表中的deptNo是外键。它指的是部门表中的deptId。
  2. 这表示学生表中的顾问是外键。它指的是教授表中的empId。
  3. 这表示部门表中的主目录是外键。它指的是教授表中的empId。
  4. 这表示课程表表中的deptNo与部门表中使用的deptId相同。学生表中的deptNo是外键。它指的是部门表中的deptId。
  5. 这表示注册表中的rollNo与学生表中使用的rollNo相同。
  6. 这表示注册表中的courseId与课程表中使用的courseId相同。
  7. 这表示教学表中的课程编号与课程表中使用的课程编号相同。
  8. 这表示教学表中的empId与教授表中使用的empId相同。
  9. 这表示preReqiusite表中的preReqCourse是外键。它指的是课程表中的courseId。
  10. 这表示学生表中的deptNo与部门表中使用的deptId相同。

笔记 –
教授表中的开始年份与学生表中的年份相同