教务管理系统设计报告_第1页
教务管理系统设计报告_第2页
教务管理系统设计报告_第3页
教务管理系统设计报告_第4页
教务管理系统设计报告_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、sql server 2005 数据库原理及应用数据库原理及应用 作业作业 教务管理系统设计报告教务管理系统设计报告 1 目目 录录 1 系统设计系统设计 .2 1.1功能规定功能规定.2 1.2功能模块划分功能模块划分.3 2 数据库设计数据库设计 .5 2.1 概念结构设计概念结构设计.5 2.2 逻辑结构设计逻辑结构设计.5 2.3 物理结构设计物理结构设计.8 2.4 数据库脚本设计数据库脚本设计.9 3 系统框架设计系统框架设计 .11 3.1 设计数据访问层设计数据访问层.11 3.2 登录界面的设计登录界面的设计.12 4 功能模块的设计功能模块的设计 .16 4.1 教师信息查

2、询页面教师信息查询页面.16 4.2 成绩录入页面成绩录入页面.19 2 教务管理自动化系统教务管理自动化系统 办公自动化是 20 世纪 70 年代中期发达国家为解决办公业务量急 剧增加对企业生产率产生巨大影响这一问题而发展起来的一门综合 性技术。教务办公自动化系统就是办公自动化在学校管理领域的具 体应用。它是以教学管理位核心,集教务管理、学籍管理、教师学 生管理、校产管理、图书管理和系统管理于一体的综合的教学管理 软件系统。 1 系统设计系统设计 1.1 功能规定功能规定 教务办公自动化系统分为前台教务信息查询和后台教务信息管理两部分。后台教 务信息管理部分包括用户管理模块(包括学生、和教务

3、管理员) 、课程管理模块、班级 管理模块、选课管理模块和成绩管理模块;前台教务信息查询部分包括教师信息查询 模块和学生信息查询模块。 (1)用户管理模块的主要功能包括: 管理用户。 添加用户。 修改用户。 删除用户。 查看用户。 (2)课程管理模块的主要功能包括: 管理课程信息。 、 添加课程信息。 修改课程信息。 删除课程信息。 查看课程信息。 (3)班级管理模块的主要功能包括: 管理班级信息。 添加班级信息。 修改班级信息。 删除班级信息。 查看班级信息。 (4)成绩管理模块的主要功能包括: 管理成绩信息。 添加成绩信息。 修改成绩信息。 删除成绩信息。 查看成绩信息。 3 (5)选课管理

4、模块的主要功能包括: 浏览学生选课信息。 修改学生选课信息。 删除学生选课信息。 统计学生选课人数 1.2 功能模块划分功能模块划分 教务办公自动化系统的总体功能模块如图 1-1 所示,途中可以很清晰地看出系统 的功能,以及功能模块之间的关系。 教教务务办办公公自自动动化化系系统统 教教务务信信息息查查询询教教务务信信息息管管理理 教教师师信信息息查查询询 学学生生信信息息查查询询 用用户户管管理理 课课程程管管理理 班班级级管管理理 选选课课管管理理 成成绩绩管管理理 图图1-1 教教务务办办公公自自动动化化系系统统功功能能模模块块示示意意图图 为了更清晰地表现需求的细节,给出系统流程图。教

5、务管理信息管理流程图如图 1-2 所示,教师信息查询流程图如图 1-3 所示,学生信息查询流程图如图 1-4 所示。 登登录录 教教务务管管理理员员 管管理理选选择择 教教师师管管理理课课程程管管理理班班级级管管理理选选课课管管理理成成绩绩管管理理 结结束束 图图1-2 教教务务管管理理员员信信息息管管理理流流程程图图 4 登登录录 查查询询选选择择 修修改改密密码码课课程程查查询询选选课课查查询询成成绩绩查查询询 结结束束 图图1-3 学学生生信信息息查查询询流流程程图图 学学生生 登登录录 查查询询管管理理 修修改改密密码码授授课课查查询询录录入入成成绩绩 结结束束 图图1-4 教教师师信

6、信息息查查询询流流程程图图 教师 以上三种流程图分别从教务管理员、学生和教师三种角色的角度来划分。 5 2 数据库设计数据库设计 2.1 概念结构设计概念结构设计 对教务办公自动化系统的实体关系(e-r)的设计建立在需求分析和系统分 析基础之上。在本系统中,除了有学生、班级、教师和课程基本实体分别记录学 生、班级、教师和课程的基本信息外,为了便于系统管理员管理用户,设计了用 户实体,记录用户登录系统时的用户名、密码以及权限。同时由于学生选课和教 师教课都应该有记录,因此设计了学生选课和教师教课表。学生选课表包含了学 生选课的内容和各门课的内容和各门课的成绩;教师教课表的内容主要是包含教 师所教

7、课程的信息。 系统的 e-r 图如图 1-5 所示。 班级 class_idvarchar50 class_namevarchar50 class_departmentvarchar50 class_collegevarchar50 class_teacheridvarchar50 用户 user_idvarchar50 user_passwordvarchar50 user_pawerint4 教师 teacher_idvarchar50 teacher_namevarchar50 teacher_collegevarchar50 学生 student_id student_namevarc

8、har50 student_sexchar5 student_nationchar5 student_birthdaydatetime8 student_timedatetime8 student_classidvarchar50 student_homevarchar50 student_elsevarchar50 教课 record_idint4 class_yearchar 课程 course_idvarchar50 course_namevarchar50 course_periodint4 course_creditint4 course_kindint4 course_descri

9、bevarchar50 选课 idint4 course_yearchar5 manage n 1 teach course t choose user class n 1 n 1 course 1 n 1 n 1 1 1 n 图图1-5 教教务务办办公公自自动动化化系系统统e-r图图 2.2 逻辑结构设计逻辑结构设计 本系统数据库中的表有用户信息数据表 users,学生信息数据表 student,班机信息数据 表 class,教师信息数据表 teacher_course,课程信息数据表 course,选课信息数据表 student_course。 (1)用户信息数据表 users。用户信息数

10、据表用于存储学生管理系统中所有参与人员 6 的信息,包括教师登录信息和学生登录信息,这样做的目的是可以方便系统判断用户登录 的类型,并对用户类型统一管理。用户信息主要有用户登录号、用户密码和用户权限管理, 结构如表 6-1 所示。 表 6-1 表 users 的结构 编号字段名称数据类型大小说明 1user_idvarchar50用户名, 主键 2user_passwordvarchar50用户密码 3user_pawerint4用户的类 型 (2)学生信息数据表 students。用于存储本校所有学生信息,包括在校生和已毕业学 生,结构如表 6-2 所示。 表 6-2 表 students

11、的结构 编号字段名称数据类型大小说明 1student_idvarchar50学生学号, 主键 2student_namevarchar50学生姓名 3student_sexchar5学生性别 4student_nationchar5学生民族 5student_birthda y datetime8学生出生 日期 6student_timedatetime8学生入学 时间 7student_classidvarchar50学生所在 班级号 8student_homevarchar50学生家庭 所在地 9student_elsevarchar50备注 (3)班级信息数据表 class。用来记录本

12、学校所有班级信息,结构如表 6-3 所示。 表 6-3 表 class 的结构 编号字段名称数据类 型 大小说明 1class_idvarcha r 50班级号, 主键 2class_namevarcha r 50班级全称 3class_departmentvarcha r 50班级所在 系别 4class_collegevarcha r 50班级所在 学院 5class_teacheridvarcha r 50本班级班 主任号 (4)教师信息数据表 teacher。用于存储本校所有教师信息,结构如表 6-4 所示。 7 表 6-4 表 teacher 的结构 编号字段名称数据类型大小说明 1

13、teacher_idvarchar50教师编号, 主键 2teacher_namevarchar50教师姓名 3teacher_colleg e varchar50教师所在 学院 (5)教课记录数据表 teacher_course。每一个教师授什么课程都必须有记录,而且一 门课可能会有多个老师授课,因此此表包括课程名称、年度、学期和班级号等,结构如图 6-5 所示 表 6-5 表 teacher_course 的结构 编号字段名称数据类型大小说明 1record_idint4教师记录的 唯一编号,主键 2teacher_idvarchar50教师号 3course_idvarchar50教师所

14、任课 程号 4class_idvarchar50教师所教班 级号 5class_yearchar5记录年度学 期 (6)课程信息数据表 course。表 course 用来存储本校所有课程信息。结构如表 6-6 所 示。 表 6-6 表 course 的结构 编号字段名称数据类型大小说明 1course_idvarchar50课程号,主 键 2course_nam e varchar50课程名 3course_peri od int4课程学时 4course_cred it int4课程学分 5course_kin d int4课程类型 6course_des cribe varchar50课

15、程具体描 述 (7)选课信息数据表 student_course。学生所学课程都会有成绩,并且每个学生每一 门课只有一个成绩。系统设计了选课信息数据表,用于存储本校所有学生课程信息,结构 如表 6-7 所示。 表 6-7 表 student_course 的结构 8 编号字段名称数据类型大小说明 1idint4教师记录的唯一编号,主键 2student_idvarchar50学生学号 3course_idvarchar50学生所学课程号 4student_gradeint4学生成绩 5course_yearchar5记录年度学期 2.3 物理结构设计物理结构设计 根据 er 模型进行分析,可确

16、定出哪些表之间的字段需要进行关联,依次设置这些 表之间的关系,结果视图如图 1-14 所示。 图 1-14 关系视图 9 2.4 数据库脚本设计数据库脚本设计 创建的数据库名为 tms,数据库表的创建代码如下: (1)创建表 users。 create table users ( user_id varchar(50) not null, user_password varchar(50) not null, user_power int not null, constraint pk_users primary key (user_id) ) (2)创建表 student. create t

17、able student ( student_id varchar(50) not null, student_name varchar(50) not null, student_sex char(5) not null, student_nation char(5) not null, student_birthday datetime not null, sturdent_time datetime not null, student_classid varchar(50) not null, student_home varchar(50) null, student_else var

18、char(50) null, constraint pk_student primary key (student_id) ) (3)创建表 class。 /*= =*/ /* table: 班级 */ /*= =*/ create table class ( class_id varchar(50) not null, class_name varchar(50) not null, class_department varchar(50) not null, class_college varchar(50) not null, class_teacherid varchar(50) no

19、t null, constraint pk_class primary key (class_id) ) (4)创建表 teacher。 *= */ /* table: 教师 */ /*= 10 =*/ create table teacher ( teacher_id varchar(50) not null, teacher_name varchar(50) null, teacher_college varchar(50) null, constraint pk_teacher primary key (teacher_id) ) (5)创建表 teacher_course. /*= =

20、*/ /* table: 教课 */ /*= =*/ create table teacher_course ( record_id int not null, teacher_id varchar(50) null, course_id varchar(50) null, course_year char(5) null, constraint pk_teacher_course primary key (record_id) ) (6)创建表 course。 /*= =*/ /* table: 课程 */ /*= =*/ create table course ( course_id va

21、rchar(50) not null, course_name varchar(50) not null, course_period int not null, course_credit int not null, course_kind int not null, course_describe varchar(50) not null, constraint pk_course primary key (course_id) ) (7)创建表 student_course。 /*= =*/ /* table: 选课 */ /*= =*/ create table student_cou

22、rse ( id bigint not null, course_id varchar(50) null, 11 student_id varchar(50) null, student_grade int(4) null, course_year char(5) null, constraint pk_student_course primary key (id) ) 3 系统框架设计系统框架设计 此工程可以分为 4 个部分,即学生信息管理部分(studentmanage) 、学生信息查询 部分(studentquery) 、教师信息查询部分(teacherquery)和通用库(app_co

23、de) 。学 生信息管理部分主要存放系统中对班级、课程和教师等信息管理的页面和文件;学生 信息查询部分主要存放对学生个人信息、选课信息浏览的页面和文件;通用库主要存 放系统的所有数据访问层的类。 3.1 设计数据访问层设计数据访问层 本系统使用的数据库访问层主要是 dataaccess.cs 文件,封装了数据库常用的操作 方法。dataaccess.cs 类的方法和属性及其作用描述如表 1-8 所示。 表 1-8 dataaccess.类的方法描述 方法名称描述 public oledbconnection getconn()连接数据库,返回连接字符串 public oledbdataread

24、er getdatareader(string strsql) 查询数据库,返回查询的数据 记录 public datatable createdatatable(string strsql)查询数据库,返回查询的数据 库 public bool execsql(string strsql)执行 sql 语句,返回执行情况, 正常返回 true,异常返回 false asp.net 应用中很多页面都需要使用数据库连接的语句,所以采用对数据库 配置进行统一管理的方法,将程序中用的的所有连接字符串信息统一放于 web.config 配置文档中,这样别的文档就可以直接使用其数据库连接,方便系统 移植

25、时对系统数据库进行统一配置和修改。 在 web.config 文件中添加代码如下: 12 注:根据具体情况设置参数。 3.2 登录界面的设计登录界面的设计 登录页面具有自动导航功能,不同用户登录时将根据其不同的身份,进入不同的系 统功能页。系统的用户包括教务管理员、教师和学生,在用户通过身份验证后,系统利 用 session 变量记录其用户号和用户身份,并伴随系统进行操作的整个过程。 (1)用户登录页面)用户登录页面 default.aspx 设计如图设计如图 1-15 所示:所示: 图 1-15 用户登录页面 default.aspx (2)页面)页面 default.aspx 的的 htm

26、l 设计代码如下:设计代码如下: default 13 教务管理系统 用户名: 密 码: (3)页面事件实现。程序代码如下:)页面事件实现。程序代码如下: using system; using system.collections; using system.componentmodel; using system.data; using system.data.sqlclient; using system.drawing; using system.web; using system.web.sessionstate; 14 using system.web.ui; using syst

27、em.web.ui.webcontrols; using system.web.ui.htmlcontrols; using system.configuration; using system.data.oledb; namespace sms public partial class _default : system.web.ui.page protected void page_load(object sender, system.eventargs e) #region web form designer generated code override protected void

28、oninit(eventargs e) initializecomponent(); base.oninit(e); private void initializecomponent() #endregion protected void btn_enter_click(object sender, system.eventargs e) sms.user user = new sms.user(); bool isok = user.login(tbx_userid.text.trim(), tbx_userpwd.text.trim(); if(isok) string strconn =

29、 system.configuration.configurationmanager.appsettingsconn; 15 oledbconnection cn = new oledbconnection(strconn); cn.open(); string strsql = select * from users where user_id= + tbx_userid.text + and user_password= + tbx_userpwd.text + ; oledbcommand cm = new oledbcommand(strsql, cn); oledbdatareade

30、r dr = cm.executereader(); if (dr.read() sessionuser_id = druser_id; sessionuser_power = druser_power; if(int)sessionuser_power=0) response.redirect(/studentquery/query.aspx); else if(int)sessionuser_power=1) response.redirect(/studentmanage/student.aspx); else response.redirect(/teacherquery/tquery

31、.aspx); cn.close(); else 16 lbl_note.text=对不起,登陆失败!; protected void tbx_userid_textchanged(object sender, eventargs e) 4 功能模块的设计功能模块的设计 本系统包括教务信息查询和教务信息管理两个主要功能。教务信息查询有包含教 师信息查询和学生信息查询;教务信息管理又包含用户管理、课程管理、班级管理、 选课管理和成绩管理功能。 我主要负责教师信息查询模块设计。 教师信息查询模块中包含教师信息查询页面 tquery.aspx 和成绩录入页面 addguade.aspx。 4.1 教

32、师信息查询页面教师信息查询页面 学成信息查询页面 tquery.aspx 用来显示登录教师的个人信息。 在页面中添加一个 repeater 控件,名为 rp_information,用来显示登录教师的个 人信息。 (1)学成信息查询页面)学成信息查询页面 tquery.aspx 的设计窗体如图的设计窗体如图 1-16 所示所示 图 1-16 学成信息查询页面 tquery.aspx (2)页面)页面 tquery.aspx 的的 html 设计代码如下:设计代码如下: 17 tquery 教师信息 个人信息 18 教师号: 姓名: 学院: (3)页面的初始化代码如下:)页面的初始化代码如下:

33、protected void page_load(object sender, system.eventargs e) teacherinfo tinfo =new teacherinfo(); string teacher_id = sessionuser_id.tostring(); datatable dt = tinfo.getteacher(teacher_id); rp_information.datasource=dt; rp_information.databind(); 19 4.2 成绩录入页面成绩录入页面 (1)成绩录入页面)成绩录入页面 addgrade.aspx 的设

34、计窗体如图的设计窗体如图 1-17 所示,用来录入学生的成绩。所示,用来录入学生的成绩。 图 1-17 成绩录入页面 addgrade.aspx (2)页面的)页面的 html 代码如下:代码如下: addgrade 成 绩录入 20 学号: 课程: 年度: 例: 20002001 成绩: 21 (3)事件的实现源代码如下:)事件的实现源代码如下: using system; using system.collections; using system.componentmodel; using system.data; using system.data.sqlclient; using s

35、ystem.drawing; using system.web; using system.web.sessionstate; using system.web.ui; using system.web.ui.webcontrols; using system.web.ui.htmlcontrols; using system.configuration; namespace sms public partial class addgrade : system.web.ui.page protected void page_load(object sender, system.eventarg

36、s e) #region web form designer generated code override protected void oninit(eventargs e) initializecomponent(); base.oninit(e); private void initializecomponent() this.cv_id.servervalidate += new system.web.ui.webcontrols.servervalidateeventhandler(this.cv_id_servervalidate); #endregion protected void btn_add_click(object sender, system.eventargs e) string strsql = updat

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论