1、数据库对于一个应用系统的意义是相当重要的,一个设计良好的数据库系统一方面,能够给开发者带来便捷,更轻松的进行系统设计与编码;另一方面,对于系统的后期维护也非常重要,一个良好的数据库系统能够保证系统的可扩充性,以及系统的移植性等问题。1.2内容和要求本实验将设计出一个高校网上选课数据库系统,其要求简要如下:(1)系统用户由三类组成:教师、学生和管理员。(2)管理员负责的主要功能:用户管理(老师、学生及管理员的增、删、改);课程管理(添加、删除和修改);选课管理(实现选课功能开放和禁止、老师成绩输入开放和禁止)。(3)学生通过登录,可以查询课程的基本信息、实现选课、退课和成绩查询;(4)老师通过登
2、录,可以查看选课学生的基本信息,可以输入成绩。二、需求分析2.1背景全校性选修课开设的目的在于扩大学生的知识面、加强学生素质教育、培养复合型高级人才,具有不可替代的重要性。随着教育改革的不断深入和素质教育的加强,学分制的实施,选修课在一个学生的培养计划中占的比重将越来越大。网上选课系统的出现使同学们能够更加自主、便捷、准确的进行选课。但是,由于一般高校中的学生都比较多,因此带来了诸多如信息管理等问题,鉴于需要将学生信息、选课信息等信息数字化以便于管理维护,我们便想到了利用数据库能够比较良好地解决此类问题,由此下面我将设计出一个高校选课系统以供参考。2.2概要分析根据1.2节中所描述的系统分析要
3、求,我们的高校选课系统将包含学生、教师、管理员等实体,学生可以在规定的时间内选课、退选和成绩查询等操作;教师可以查看学生的相关信息,录入学生成绩等操作;管理员可以添加管理员,管理教师、学生等信息。2.3开发技术开发工具:Microsoft SQL Server 2000开发语言:SQL开发技术:数据库开发技术面向对象:需求者2.4系统主要功能实验选课系统分为教师,学生及系统管理员三类用户,学生的功能包括选课、退选、查询选课信息等,教师的功能包括学生成绩录入,查询实验信息等。管理员的功能包括新建教师、学生账户,添加课程信息,其系统功能模块如图2-1:图2-1系统功能模块三、E-R图本章节主要包含
4、概念设计、E-R图,以及如何将E-R图转换为实际的物理模型等内容。3.1概念设计在我们的数据库系统中共有6个实体:学生、教师、管理员、专业、院系、课程。(1)学生的属性:学号、姓名、性别、生日、密码(2)教师的属性:工号、姓名、性别、生日、密码、职称(3)管理员的属性:工号、姓名、性别、生日、密码、权限标志(4)专业的属性:专业号码、专业名、辅导员、联系方式、专业介绍(5)院系的属性:系号码、系名称、系主任、联系方式、系介绍(6)课程的属性:课程号码、学时、学分、课程介绍(7)控制设置属性:选课控制、成绩录入控制3.2 E-R图各个实体的E-R图如下所示:图3-1学生图3-2教师图3-3管理员
5、图3-4专业图3-5系图3-6课程然后,将以上实体之间联系表示出来,画出数据库系统的E-R图,如图3-7所示:图3-7数据库系统E-R图四、逻辑结构4.1细化表结构为方便,根据上述文字描述,用英文简写为表和列取名,确定列的数据类型及必要的约束规则,给出如下所示数据库表的基本结构及说明:(1)学生信息表列名说明数据类型约束StudentNum学号char(10)主码MajorNum专业号码not null,引用tb_major的外码StudentName姓名varchar(10)Not nullStudentSex性别char(2)not null,取“男”或“女”StudentBirthday
6、生日datetimenot nullStudentPassword密码varchar(20)not null,(2)教师信息表TeacherNum教师工号DeptNum院系号码not null,引用tb_dept的外码TeacherNameTeacherSexTeacherBirthdayTeacherTitle职称(3)管理员信息表ManagerNum管理员工号ManagerNameManagerSexManagerBirthday(4)专业信息表系号码MajorName专业名not nulMajorAssistant辅导员MajorTel联系方式varchar(15)(5)院系信息表Dep
7、tName系名称DeptChairman系主任DeptTelDeptDesc系介绍text(6)课程信息表CourseNum课程号码CourseName课程名CourseCredit学分floatCourseClass学时smallintCourseDesc课程介绍(7)选课信息表StuCourseID选课编号int主码,自动递增not null,引用tb_student的外码not null,引用tb_course的外码Grade成绩五、数据库实施本章节主要包含创建表、添加数据和创建必要的视图、触发器和存储过程等内容。5.1创建表考虑到各个表之间的约束条件以及外键索引等要求,在创建表的时候应
8、当按照一定的次序进行创建,否则会出现错误,还有一种方法是先创建各个基本表,然后在对特定的表添加列和外码约束,在本报告册中将采取第一种方法。(1)tb_dept院系信息表CREATE TABLE tb_dept(DeptNum char(10)NOT NULL PRIMARY KEY,DeptName varchar(20)NOT NULL,DeptChairman varchar(10)NOT NULL,DeptTel varchar(15)NOT NULL,DeptDesc text NOT NULL,)(2)tb_major专业信息表CREATE TABLE tb_major(MajorN
9、um char(10)NOT NULL PRIMARY KEY,DeptNum char(10)NOT NULL,MajorName varchar(20)NOT NULL,MajorAssistant varchar(10)NOT NULL,MajorTel varchar(15)NOT NULL,FOREIGN KEY(DeptNum)REFERENCES tb_dept(DeptNum)(3)tb_student学生信息表CREATE TABLE tb_student(StudentNum char(10)NOT NULL PRIMARY KEY,MajorNum char(10)NOT
10、 NULL,StudentName varchar(10)NULL,StudentSex char(2)NOT NULL,StudentBirthday datetime NOT NULL,StudentPassword varchar(20)NOT NULL,FOREIGN KEY(MajorNum)REFERENCES tb_major(MajorNum)(4)tb_teacher教师信息表CREATE TABLE tb_teacher(TeacherNum char(10)NOT NULL PRIMARY KEY,TeacherName varchar(10)NOT NULL,TeacherSex char(2)NOT NULL,TeacherBirthday datetime NOT NULL,TeacherTitle varchar(20)NULL,(5)tb_manager管理员信息表CREATE TABLE tb_manager(ManagerNu
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1