学籍管理系统数据库设计
学生学籍管理系统实例
分析
定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析
1.1 学籍管理系统简介
学籍管理是高等院校学生管理事务中的一项重要工作,在管理过程中涉及大量的数据处理,而传统的人工管理已经无法完全胜任。特别是实行学分制以后,涉及学生选课的相关数据的处理为人工学籍管理带来了更大的工作量。为了解决学生学籍管理问题,学生学籍管理系统(student’s data manage
system)应运而生。
1.2 系统功能分析
高等院校学籍管理涉及院系信息、班级信息、任课教师信息、学生信息、学籍变更信息、学生奖惩信息、课程信息以及选课信息和成绩等多种数据 信息。
学籍管理用户包括系统管理员、教师和学生。系统管理员负责日常的学籍管理工作,如各种基本信息的录入、修改、删除等操作。教师使用该系统可完成教学班信息查询和成绩管理。学生使用该系统主要完成选课和成绩查询等操作。
经过调研与分析,高等院校学籍管理系统主要应具有以下功能。
(1)院系信息管理。院系信息管理包括院系信息数据的录入、修改与删除等功能。
(2)班级信息管理。班级信息管理包括班级信息的录入、修改与删除等功能。
(3)教师信息管理。教师信息管理包括任课教师信息的录入、修改与删除等功能。
(4)学生信息管理。学生信息管理包括学生信息的录入、修改与删除等功能。
(5)课程信息管理。课程信息管理包括课程信息的录入、修改与删除等
第1章 学生学籍管理系统实例分析3
功能。
(6)学籍变更信息管理。学籍变更信息管理包括学籍变更信息的录入、修改与删除
等功能。
(7)学生奖惩信息管理。学生奖惩信息管理包括学生奖惩信息的录入、修改与删除
等功能。
(8)数据查询。数据查询包括教学班学生信息的查询和学生成绩查询等功能。 详细的设计将在第8章介绍。
1.3 各数据表的结构
学籍管理系统数据库各数据表的结构如下。
(1)数据库名:student。
(2)student表(学生信息表)如表1-1所示。
表1-1 student表(学生信息表) 字段名称 类 型 宽 度 允许空值 主 键 说 明
是 学生学号 sno char 8 NOT NULL
学生姓名 sname char 8 NOT NULL
学生性别 sex char 2 NULL
籍贯 native char 20 NULL
学生出生日期 birthday smalldate 4 NULL
学生所在院系编号(外键) dno char 6 NULL
专业代码(外键) spno char 8 NULL
班级号 classno char 4 NULL
学生入校时间 entime smalldate 4 NULL
学生家庭住址 home varchar 40 NULL
学生联系电话 tel varchar 40 NULL
(3)course表(课程信息表)如表1-2所示。
表1-2 course表(课程信息表) 字段名称 类 型 宽 度 允许空值 主 键 说 明
是 课程编号 cno char 10 NOT NULL
专业代码(外键) spno char 8 NULL
课程名称 cname char 20 NOT NULL
课程类型编号(外键) ctno tinyint 1 NULL
实验时数 experiment tinyint 1 NULL
授课学时 lecture tinyint 1 NULL
开课学期 semester tinyint 1 NULL
课程学分 credit tinyint 1 NULL
(4)student_course表(学生选课成绩表)如表1-3所示。
SQL Server 2000与IBM DB2数据库实验指导教程 4
表1-3 student_course表(学生选课成绩表) 字段名称 类 型 宽 度 允许空值 主 键 说 明
是 学生学号 sno char 8 NOT NULL
是 上课编号 tcid smallint 2 NOT NULL
学生成绩 score tinyint 1 NULL
注意:上课编号tcid是指teacher_course,教师上课课表,中的tcid~而不是course
表,课程信息表,中的课程编号cno。
(5)teacher表(教师信息表)如表1-4所示。
表1-4 teacher表(教师信息表) 字段名称 类 型 宽 度 允许空值 主 键 说 明
是 教师编号 tno char 8 NOT NULL
教师姓名 tname char 8 NOT NULL
教师性别 sex char 2 NULL
教师出生日期 birthday smalldate 4 NULL
教师所在院系编号(外键) dno char 6 NULL
教师职务或职称编号 pno tinyint 1 NULL
教师家庭住址 home varchar 40 NULL
邮政编码 zipcode char 6 NULL
联系电话 tel varchar 40 NULL
电子邮件 email varchar 40 NULL
(6)department表(院系信息表)如表1-5所示。
表1-5 department表(院系信息表) 字段名称 类 型 宽 度 允许空值 主 键 说 明
是 院系编号 dno char 6 NOT NULL
院系名称 dname char 20 NOT NULL
院系负责人 header char 8 NULL
院系办公地址 addr varchar 40 NULL
联系电话 del varchar 40 NULL
(7)user表(用户信息表)如表1-6所示。
表1-6 user表(用户信息表) 字段名称 类 型 宽 度 允许空值 主 键 说 明
是 用户名 usrno char 8 NOT NULL
密码 usrpwd char 8 NULL
操作权限 usrrights int 4 NOT NULL
(8)speciality表(专业信息表)如表1-7所示。
第1章 学生学籍管理系统实例分析5
表1-7 speciality表(专业信息表) 字段名称 类 型 宽 度 允许空值 主 键 说 明
是 专业代码 spno char 8 NOT NULL
院系编号(外键) dno char 6 NOT NULL
专业名称 spname char 20 NOT NULL
(9)class表(班级信息表)如表1-8所示。
表1-8 class表(班级信息表) 字段名称 类 型 宽 度 允许空值 主 键 说 明
是 班级号 classno char 4 NOT NULL
是 专业代码 spno char 8 NOT NULL
班负责人 header char 8 NULL
(10)teacher_course表(教师上课课表)如表1-9所示。
表1-9 teacher_course表(教师上课课表) 字段名称 类 型 宽 度 允许空值 主 键 说 明
是 上课编号 tcid smallint 2 NOT NULL
教师编号(外键) tno char 8 NULL
专业代码(外键) spno char 8 NULL
班级号 classno char 4 NULL
课程编号(外键) cno char 10 NOT NULL
学期 semester char 6 NULL
学年 schoolyear char 10 NULL
上课时间 classtime varchar 40 NULL
上课地点 classroom varchar 40 NULL
每周课时数 weektime tinyint 1 NULL
(11)change表(学籍变更信息表)如表1-10所示。
表1-10 change表(学籍变更信息表) 字段名称 类 型 宽 度 允许空值 主 键 说 明
是 记录号 changeid smallint 2 NOT NULL
学生学号(外键) sno char 8 NOT NULL
变更代码(外键) change char 1 NOT NULL
记录时间 rectime datetime 8 NOT NULL
描述 description varchar 100 NULL
(12)reward表(奖励记录信息表)如表1-11所示。
表1-11 reward表(奖励记录信息表) 字段名称 类 型 宽 度 允许空值 主 键 说 明
是 记录号 rewardid smallint 2 NOT NULL
学生学号(外键) sno char 8 NOT NULL
SQL Server 2000与IBM DB2数据库实验指导教程 6
续表 字段名称 类 型 宽 度 允许空值 主 键 说 明
级别代码(外键) levels char 1 NOT NULL
记录时间 rectime datetime 8 NOT NULL
描述 description varchar 100 NULL
(13)punishment表(处罚记录信息表)如表1-12所示。
表1-12 punishment表(处罚记录信息表)
字段名称 类 型 宽 度 允许空值 主 键 说 明
是 记录号 punishmentid smallint 2 NOT NULL
学生学号(外键) sno char 8 NOT NULL
级别代码(外键) levels char 1 NOT NULL
记录时间 rectime datetime 8 NOT NULL
是否生效(T-是 F-否) enable char 1 NOT NULL
描述 description varchar 100 NULL
(14)change_code表(学籍变更信息表)如表1-13所示。
表1-13 change_code表(学籍变更信息表)
字段名称 类 型 宽 度 允许空值 主 键 说 明
是 变更代码 code char 1 NOT NULL
描述 description varchar 100 NULL
(15)reward_levels表(奖励记录信息表)如表1-14所示。
表1-14 reward_levels表(奖励记录信息表) 字段名称 类 型 宽 度 允许空值 主 键 说 明
是 代码 code char 1 NOT NULL
描述 description varchar 100 NULL
(16)punishment_levels表(处罚记录信息表)如表1-15所示。
表1-15 punishment_levels表(处罚记录信息表) 字段名称 类 型 宽 度 允许空值 主 键 说 明
是 变更代码 code char 1 NOT NULL
描述 description varchar 100 NULL
(17)cousetype表(课程类型表)如表1-16所示。
表1-16 cousetype表(课程类型表)
字段名称 类 型 宽 度 允许空值 主 键 说 明
是 类型编号 ctno tinyint 1 NOT NULL
类型名称 ctname char 16 NOT NULL
第1章 学生学籍管理系统实例分析7 (18)profession表(职称表)如表1-17所示。
表1-17 profession表(职称表)
字段名称 类 型 宽 度 允许空值 主 键 说 明
是 职称编号 pno tinyint 1 NOT NULL
职称名称 profession char 10 NOT NULL
1.4 各数据表之间的关系
要创建数据库student还必须明确各数据表的相互关系。这一节将介绍学籍管理系统数据库各数据表之间的关系。
学籍管理系统数据库各数据表之间的关系如下。
(1)change_code表和change表之间的关系如图1-1所示。
图1-1 change_code表和change表之间的关系
(2)coursetype表和course表之间的关系如图1-2所示。
图1-2 coursetype表和course表之间的关系
(3)department表和speciality表之间的关系如图1-3所示。
图1-3 department表和speciality表之间的关系
SQL Server 2000与IBM DB2数据库实验指导教程 8
(4)department表和student表之间的关系如图1-4所示。
图1-4 department表和student表之间的关系 (5)department表和teacher表之间的关系如图1-5所示。
图1-5 department表和teacher表之间的关系 (6)profession表和teacher表之间的关系如图1-6所示。
图1-6 profession表和teacher表之间的关系 (7)punishment_levels表、punishment表和student表之间的关系如图1-7所示。
第1章 学生学籍管理系统实例分析9
图1-7 punishment_levels表、punishment表和student表之间的关系 (8)reward_levels表,reward表和student表之间的关系如图1-8所示。
图1-8 reward_levels表、reward表和student表之间的关系 (9)speciality表和class表之间的关系如图1-9所示。
图1-9 speciality表和class表之间的关系
(10)speciality表和course表之间的关系如图1-10所示。
图1-10 speciality表和course表之间的关系
SQL Server 2000与IBM DB2数据库实验指导教程 10
(11)speciality表和student表之间的关系如图1-11所示。
图1-11 speciality表和student表之间的关系 (12)student表和change表之间的关系如图1-12所示。
图1-12 student表和change表之间的关系 (13)student表和student_course表之间的关系如图1-13所示。
图1-13 student表和student_course表之间的关系