1、学生信息管理系统课程设计精选文档 TTMS system office room 【TTMS16H-TTMS2A-TTMS8Q8-TTMSHHJ8】学生信息管理系统课程设计精选文档辽 宁 工 业 大 学SQL数据库设计课 程 设 计 说 明 书题目: 学生信息管理系统 院(系): 软件学院 专业班级: 软件工程 学 号: 学生姓名: 刘 盾 指导教师: 佟 玉 军 教师职称: 副 教 授 起止时间: 2013.12.30-2014.01.10 第1章 设计目的与要求 11.1设计目的 11.2设计环境 11.3主要参考资料 11.4设计内容及要求 1第2章 设计内容 22.1数据库设计 22.
2、1.1需求分析 2212概念设计 2213逻辑设计 2214物理设计 42.1.5 数据库实现 522程序设计 8221概要设计 8222程序实现 8第3章 设计总结 14参考文献 15第1章 设计目的与要求1.1设计目的 本设计专题是软件工程类专业的有关管理信息系统设计开发的一个重要环节,是本专业学生必须学习和掌握的综合实践课程。本实践课的主要目的是:(1)、掌握运用管理系统及数据库原理知识进行系统分析和设计的方法;(2)掌握关系数据库的设计方法;(3)掌握SQL Server 2000技术应用;(4)掌握简单的数据库应用程序编写方法;(5)理解C/S模式结构。1.2设计环境硬件:cpu,内
3、存,硬盘软件:操作系统,SQL版本1.3主要参考资料1.管理信息系统 黄梯云 高等教育出版社2.数据库系统概论 萨师煊 高等教育出版社 3.SQL Server 2000 数据库应用系统开发技术朱如龙编,机械工业出版社。4.SQL Server 2000 数据库应用系统开发技术实验指导朱如龙编,机械工业出版社1.4设计内容及要求 一、内容1.要求根据管理信息系统及数据库设计原理,按照数据库系统设计的步骤和规范,完成各阶段的设计内容。2.需求分析具体实际,数据流图、数据字典、关系模型要正确规范3.在sql server2000 上实现设计的数据库模型。4.对应用程序进行概要设计。5.用VB实现简
4、单的应用程序编写。二、要求设计过程中,要严格遵守课程设计的时间安排,听从指导教师的指导。正确地完成上述内容,规范完整地撰写出课程设计报告。第2章 设计内容2.1数据库设计本学生信息管理系统可以说是一个综合性的学校学生管理系统,这它集成了学生学籍管理系统、学生成绩管理系统、学生档案管理系统等多种功能。本系统主要用到的技术包括:SQL和VB结合的开发模式, 这种设计模式把应用逻辑、处理过程和显示逻辑分成不同的组件来实现,这些组建可以进行交互和重用。封装了数据操作类,以便调用数据库的操作函数因而具有较强的实用性和先进性。2.1.1需求分析学生信息管理系统就是对学生信息的管理,所以首先我们需要知道的是
5、学生有那些信息,并且是怎样进行分类的。计算机已经成为我们学习和工作的得力助手:今天,计算机的价格已经十分低廉,性能有了长足的进步。它已经被应用于许多领域,学生的信息包含1:基本信息;2:课程及成绩;3:课程表。基本信息根据要求应该包括学生的基本情况、获得奖励情况、受到处分情况、学生的家庭信息等;课程及成绩应该包含对应课程对应学生的成绩;为了解决传统学生信息的管理正面临着的这些问题,我们为信息管理系统分四个表:学生基本信息(学号,姓名 ,性别,出生日期,学生所在系,班号 ,入校成绩,入学时间,电话,父亲,母亲,获得奖励情况,受到处分情况),学生成绩表(学号,课程号,成绩),课程表(课程号,课程名
6、,教师姓名,先导课程)。 我所设计的学生信息管理系统就由此而产生了。 212概念设计实体间的联系:1:学生个人信息表stunents:学号s_number、姓名s_name、性别sex、出生日期birthday、籍贯native、所在院系编号dep_number、所在班级 class_number、电话号码tel、联系地址address、相片photo、个人信息备注note2:学籍变更信息表schoolregister:记录号t_number、学号s_number、变更情况change、记录对象t_object、记录时间t_time、详细描述t_memo3:学生奖励记录表reward:记录号r
7、_number、学号s_number、级别r_rank、奖励对象r_object 、记录时间r_time 、详细描述r_memo4:学生处罚记录表 punish:记录号p_number、学号s_number、级别p_rank、处罚对象p_object、记录时间p_time、详细描述p_memo、是否生效effect5:班级信息表 class:班级编号c_number、班级名称c_name、所属院系dep_number6:院系信息表department:院系编号dep_number、院系名称dep_name7:E-R图:1)、用户(普通用户、管理员)实体图如图2-1所示: 图2-12)、学生实体
8、图如图2-2所示: 图2-23)、学生选课关系图如图2-3所示: 图2-3213逻辑设计逻辑设计就是把概念设计得到的概念数据库模式变为逻辑数据模式,它依赖于DBMS。数据库的逻辑设计(包括各种表和表间关系)是优化关系数据库的核心。设计好逻辑数据库,可以为优化数据库和应用程序性能打下基础。逻辑数据库设计不好,会损害整个系统的性能。数据库逻辑设计所要完成的任务是:概念结构设计所得的E-R模型是对用户需求的一种抽象的表达形式,它独立于任何一种具体的数据模型,因而也不能为任何一个具体的DBMS所支持。为了能够建立起最终的物理系统,还需要将概念结构进一步转化为某一DBMS所支持的数据模型,然后根据逻辑设
9、计的准则,数据的语义约束,规范化理论等对数据模型进行适当的调整和优化,形成合理的全局逻辑结构,并设计出用户子模式。根据上述学生管理系统的多个实体用,画出学生管理系统管理关系E-R图,如图2-4所示。 1 N 1 1 N N N 1 N 图2-4214物理设计物理结构设计是为逻辑数据模型建立一个完整的能实现的数据库结构,包括存储结构和存取方法。输入:系统关系数据结构输出:系统数据库物理结构1.物理结构设计的主要内容:2.物理存储介质类型的选择为了提高系统的安全性,防止系统因介质的损坏而导致数据丢失的危险,学生信息管理系统最好采用基于Windows 2000 RAID-5卷实现的RAID-5级的磁
10、盘阵列,因此需要四块物理磁盘。3.数据库物理位置的选择学生信息管理系统数据库的数据文件安排如下:一个主数据文件,存放在C:Teachdatateachdat1.mdf下;两个次数据文件,分别存放在D:Teachdatateachdat2.mdf和E:Teachdatateachdat3.mdf下;日志文件,存放在F:Teachdatateachlog.ldf下。应用系统可以对四块磁盘进行并行访问,从而提高对磁盘数据的读写效率。4.索引类型的选择教学信息管理系统的核心任务是对学生的学籍信息和考试信息进行有效的管理。其中,数据量最大且访问频率较高的是学生选课信息表。为了提高系统的查询效率,降低系统
11、的查询成本,需要为学生信息表和学生选课信息表建立聚簇索引。5.数据库服务器性能参数配置数据库服务器的内存配置参数、I/O配置参数和操作系统性能配置参数使用系统安装时缺省参数。数据库物理设计阶段的任务是根据具体计算机系统的特点,为给定的数据库模型确定合理的存储结构和存取方法。物理结构设计阶段实现的是数据库系统的内模式,因此它的质量直接决定了整个系统的性能。因此在确定数据库的存储结构和存取方法之前,对数据库系统所支持的事物要进行仔细的分析,获得优化数据库物理设计的参数。物理结构设计是为逻辑数据模型建立一个完整的能实现的数据库结构,包括存储结构和存取方法。若出现数据冗余情况,是因为有某些数据记录不正
12、确,去除了数据文件中的碎片,以保证数据传输的正确性和完整性。循环冗余检查(CRE)是一种数据传输检错功能,对数据进行多项式计算,并将得到的结果附在帧的后面,接收设备也执行类似算法,以保证数据传输的正确性和完整性。若CRC校验不通过,系统重复向硬盘复制数据,陷入死循环,导致复制过程无法完成。2.1.5 数据库实现在进行概念结构设计和物理结构设计之后,对学生信息管理系统系统结构,功能已经分析得比较清楚了,但是还只是停留在文档阶段。数据系统设计的根本目的,是为用户提供一个能够实际运行的系统,并保证系统的稳定和高效。要做到这点,还有两项工作,就是数据库的实施,运行和维护。学生信息管理系统中的表关系图2
13、-5所示。图2-5数据库实施是根据应用系统数据库的关系结构模型和物理结构设计结果,形成基于SQL Server平台应用系统数据库的脚本和数据库设计报告,并进行数据库的具体构建与管理。1.学生个人信息表stunents(学号s_number、姓名s_name、性别sex、出生日期birthday、籍贯native)字段名字段类型长度主键或外键字段值约束对应中文属性名s_numberchar10主键不为空学号s_namechar8不为空姓名sexchar2不为空性别birthdaydatetime8不为空出生日期nativechar20不为空籍贯2.学籍变更信息表schoolregister(记录
14、号t_number、学号s_number、变更情况change、记录对象t_object、记录时间t_time、详细描述t_memo)字段名字段类型长度主键或外键字段值约束对应中文属性名t_numberint4主键不为空记录号s_numberchar10外键不为空学号changechar20变更情况t_objectchar20不为空记录对象t_timedatetime8不为空记录时间t_memovarchar100详细描述3学生成绩表(grade):表结构如下表所示:名称字段名称类型长度学号snoint2课程名cnamechar10成绩gradechar2学期semesterchar8存储过程
15、:在本程序中,为了方便提高程序的运行效率,程序使用了存储过程来实现数据的删除,在查询分析器的定义如下:删除Student表中的学生信息:create procedure DeleteStudentData(DeleteSno char(10)asdelete from Student where Sno=DeleteSno;删除Dept中的系信息:create procedure DeleteDeptData(DeleteDno char(10)asdelete from Dept where Dno=DeleteDno 触发器:判断是否该学生已经选了20学分的课程,和成绩的判断触发器,定义如
16、下:实现20学分的判断:create trigger CcreditsJudgeon CourseSelectionTablefor insert asdeclare SumCcredits int,Sno char(10)select Sno=Snofrom insertedselect SumCcredits=sum(Ccredits)from CourseSelectionTablewhere Sno=Snoif SumCcredits20beginrollback transaction end 22程序设计221概要设计系统开发的总体任务是实现商品进销存管理信息的系统化、规范化和自动
17、化,系统功能分析是在系统开发的总体任务的基础上完成的。通过对信息更改、维护、查询等活动的调查、分析与总结,结合企业的实际,我们可以将系统分为以下五大功能:学生基本情况更新、学生基本情况维护、学生成绩维护、数据维护、密码修改。学生基本情况更新模块该模块主要是对学生信息,包括姓名、学号、班级、政治面貌等信息进行添加、修改、删除和查询操作。学生基本情况维护模块该模块主要是对学生的信息进行维护,学生日常生活中的所有信息基本上都可以通过此模块进行维护。这样做可以加强学生信息的安全程度。学生成绩维护模块该模块主要是对学生的成绩进行查询,添加,和打印,在此模块中,可以通过学生的学号和专业来查询学生的成绩。方
18、便快捷数据维护模块该模块主要实现数据的备份和还原,管理员可以通过此模块来管理数据资源,保证数据资源的可靠性和安全行。密码修改模块该模块用于对密码的修改。其中普通的用户只能更改自己的密码,而管理员可以更改所有的密码。本系统主要包括学生基本情况更新,学生基本情况维护、学生成绩维护、密码修改和数据维护5个大的模块,各个模块的具体功能如图2-6所示:图2-6222程序实现登录模块:登录界面用户验证登录用户的身份信息,只有合法的用户才能进入系统,从而保证系统的安全性。登录界面的运行结果如下图2-7所示:图2-7学籍信息查询模块:学生信息查询界面。主要实现通过学号查询学生的基本信息,包括其姓名、性别、出生
19、日期等信息;方便用户的查找,学籍信息查询界面的运行结果如下图2-8所示: 图2-8学籍信息“查找”按钮的代码如下:宁德房管局 Private Sub CmdQuery_Click()If Val(txtBirth.Text) 0 Then If Not IsDate(txtBirth.Text) Then MsgBox 出生日期不是有效日期,请重新输入!, vbInformation, 提示 txtBirth.SetFocus txtBirth.Text = _-_-_ Exit Sub End IfEnd IfIf Val(txtInDate.Text) 0 Then If Not IsDa
20、te(txtInDate.Text) Then MsgBox 入校时间不是有效日期,请重新输入!, vbInformation, 提示 txtInDate.SetFocus txtInDate.Text = _-_-_ Exit Sub End IfEnd Ifsql = select student_id,student_name,student_gender,birth_date,s.class_no,tele_number,in_date,grade_no,user_id,address,comment from student_info s inner join class_info
21、c on s.class_no=c.class_no where 1=1If txtstudentName.Text Then sql1 = and student_name= & txtstudentName.Text & Else sql1 = End IfIf txtStudentId.Text Then sql2 = and student_id= & txtStudentId.Text & Else sql2 = End IfIf txtTel.Text Then sql3 = and tele_number= & txtTel.Text & Else sql3 = End IfIf
22、 cboSex.Text Then sql4 = and student_gender= & cboSex.Text & Else sql4 = End IfIf Val(txtBirth.Text) 0 Then sql5 = and birth_date= & txtBirth.Text & Else sql5 = End IfIf Val(txtInDate.Text) 0 Then sql6 = and in_date= & txtInDate.Text & Else sql6 = End IfIf cboClassNo.Text Then sql7 = and s.class_no=
23、 & cboClassNo.Text & Else sql7 = End IfIf cboGradeNo.Text Then sql8 = and grade_no= & cboGradeNo.Text & Else sql8 = End IfIf cboUserId.Text Then sql9 = and user_id= & cboUserId.Text & Else sql9 = End Ifsql = sql & sql1 & sql2 & sql3 & sql4 & sql5 & sql6 & sql7 & sql8 & sql9StuQuery.rsDK1 sql Student
24、Grid.Clear StudentGrid.FormatString = | 学 号| 姓 名|性别| 出生日期|班号| 联系电话| 入校时间| 年级编号|班主任编号| 家庭住址| 注释 MsgBox 没有找到符合条件的记录!, vbOKOnly + vbInformation, 提示Else Set StudentGrid.DataSource = StuQuery.rs1 StudentGrid.FormatString = | 学 号| 姓 名|性别| 出生日期|班号| 联系电话| 入校时间| 年级编号|班主任编号| 家庭住址| 注释End IfEnd Sub 第3章 设计总结有关于数
25、据库实验的心得体会,总的来说,受益匪浅。在这次的试验中,我们学到了很多东西,包括建表,导入数据,查询,插入。最重要的是我们有机会用电脑自己进行实践,没接触的时候总是觉得它比较深奥或是不可接近的新型语言,尽管自己对C语言非常感兴趣,但还是有些心理上的陌生感。学习数据库就和我们平时的其它科目学习一样感觉它有永无止境的知识,数据库是我在高中时候听过,到了大学渐渐了解了些,但就其原理性的内容还不知道,也就是根本就不清楚什么是数据库,只是知道一个所谓的中国字典里的名词。我认识它是从我接触实验运作开始的,刚开始就是建立数据库,两种验证模式,没什么东西但还觉得不错。进而就是操作语言了,紧接着就是触发器的使用
26、,进而对数据库高级的使用,等等。 开始知道数据库的时候想学,不知道从何而起,不懂的话怎么问,从什么地方学起。后来到大二开学后有数据库原理必修课,非常高兴。当时感觉SQL Sever数据库管理既然是单独一门课程一定会讲的比较细,也能学到真正实用的内容。学了这门课以后发现和我想的基本是一样的,老师对学生也比较和蔼可亲,对我们要求也不是很紧。让每个人都觉得轻轻松松就能把这门课程学完,没有多么紧张的作业,也没有太苛刻的要求。以前没接触过它,现在认识了它才知道SQL Server的体系很庞大,要学习它,首先要了解的SQL Server框架。它有物理结构(由控制文件、数据文件、重做日志文件、参数文件、归档
27、文件、密码文件组成),逻辑结构(表空间、段、区、块),内存分配(SGA和PGA)算机的实际内存中得以分配,如果实际内存不够再往虚拟内存中写,后台进程(数据写进程、日志写进程、系统监控、进程监控、检查点进程、归档进程、服务进程、用户进程),SCN(System Change Number)。这些东西感觉都比较专业,我对它们也就是个知道,想要真真去认识我还得努力去做。虽然懂得还不是很多,起码会了基本的软件操作,老师说我们用的都是客户端,服务端看不到,也不知道服务端是什么样的,只知道客户端就挺多东西的,没有真正的去学习利用是很难掌握的。参考文献1. 黄梯云.管理信息系统.高等教育出版社2. 萨师煊.
28、数据库系统概论.高等教育出版社 3. 朱如龙.SQL Server 2000 数据库应用系统开发技术.机械工业出版社4. 张清.SQL Server 2000 数据库应用系统开发技术实验指导.机械工业出版社5. 罗骏 SQL实用简明教程 清华大学出版社6. 龚沛曾 面向对象程序设计系列教材 中国金融出版社7. 吴晓琪 程序设计与技术大全 清华大学出版社8. 李明 数据库原理与应用 北京高等教育出版社9. 罗运红 Microsoft SQL Server 2000中文版完全实战科学出版社10. 章立民 SQL Server数据库系统基础高等教育出版社11. 蒋军超 MySQL网络数据库开发 人民邮电出版社。12. 李朝 VB页面程序设计 中国铁道出版社 13. 耿祥义 数据库与JAVA的连接 清华大学出版社 14. 印昊 数据库的原理与设计 高等教育出版社
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1