




免费预览已结束,剩余12页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
辽 宁 工 业 大 学SQL数据库设计课 程 设 计 说 明 书题目: 学生信息管理系统 院(系): 软件学院 专业班级: 软件工程 学 号: 学生姓名: 刘 盾 指导教师: 佟 玉 军 教师职称: 副 教 授 起止时间: 2013.12.30-2014.01.10 辽 宁 工 业 大 学 课 程 设 计 说 明 书(论 文) 目 录第1章 设计目的与要求11.1设计目的11.2设计环境11.3主要参考资料11.4设计内容及要求1第2章 设计内容22.1数据库设计22.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,内存,硬盘软件:操作系统,SQL版本1.3主要参考资料1.管理信息系统 黄梯云 高等教育出版社2.数据库系统概论 萨师煊 高等教育出版社 3.SQL Server 2000 数据库应用系统开发技术朱如龙编,机械工业出版社。4.SQL Server 2000 数据库应用系统开发技术实验指导朱如龙编,机械工业出版社1. 4设计内容及要求 一、内容1.要求根据管理信息系统及数据库设计原理,按照数据库系统设计的步骤和规范,完成各阶段的设计内容。2.需求分析具体实际,数据流图、数据字典、关系模型要正确规范3.在sql server2000 上实现设计的数据库模型。4.对应用程序进行概要设计。5.用VB实现简单的应用程序编写。二、要求设计过程中,要严格遵守课程设计的时间安排,听从指导教师的指导。正确地完成上述内容,规范完整地撰写出课程设计报告。第2章 设计内容2.1数据库设计本学生信息管理系统可以说是一个综合性的学校学生管理系统,这它集成了学生学籍管理系统、学生成绩管理系统、学生档案管理系统等多种功能。本系统主要用到的技术包括:SQL和VB结合的开发模式, 这种设计模式把应用逻辑、处理过程和显示逻辑分成不同的组件来实现,这些组建可以进行交互和重用。封装了数据操作类,以便调用数据库的操作函数因而具有较强的实用性和先进性。2.1.1需求分析学生信息管理系统就是对学生信息的管理,所以首先我们需要知道的是学生有那些信息,并且是怎样进行分类的。计算机已经成为我们学习和工作的得力助手:今天,计算机的价格已经十分低廉,性能有了长足的进步。它已经被应用于许多领域,学生的信息包含1:基本信息;2:课程及成绩;3:课程表。基本信息根据要求应该包括学生的基本情况、获得奖励情况、受到处分情况、学生的家庭信息等;课程及成绩应该包含对应课程对应学生的成绩;为了解决传统学生信息的管理正面临着的这些问题,我们为信息管理系统分四个表:学生基本信息(学号,姓名 ,性别,出生日期,学生所在系,班号 ,入校成绩,入学时间,电话,父亲,母亲,获得奖励情况,受到处分情况),学生成绩表(学号,课程号,成绩),课程表(课程号,课程名,教师姓名,先导课程)。 我所设计的学生信息管理系统就由此而产生了。 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_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)、学生实体图如图2-2所示:学号姓名性别班级政治面貌出生年月学生 图2-23)、学生选课关系图如图2-3所示:学号姓名性别班级政治面貌出生年月学生 图2-3213逻辑设计逻辑设计就是把概念设计得到的概念数据库模式变为逻辑数据模式,它依赖于DBMS。数据库的逻辑设计(包括各种表和表间关系)是优化关系数据库的核心。设计好逻辑数据库,可以为优化数据库和应用程序性能打下基础。逻辑数据库设计不好,会损害整个系统的性能。数据库逻辑设计所要完成的任务是:概念结构设计所得的E-R模型是对用户需求的一种抽象的表达形式,它独立于任何一种具体的数据模型,因而也不能为任何一个具体的DBMS所支持。为了能够建立起最终的物理系统,还需要将概念结构进一步转化为某一DBMS所支持的数据模型,然后根据逻辑设计的准则,数据的语义约束,规范化理论等对数据模型进行适当的调整和优化,形成合理的全局逻辑结构,并设计出用户子模式。根据上述学生管理系统的多个实体用,画出学生管理系统管理关系E-R图,如图2-4所示。属于班级院系 1 N 1 1属于学生属于 N N学籍变更 N 1 N 学籍更改 图2-4214物理设计物理结构设计是为逻辑数据模型建立一个完整的能实现的数据库结构,包括存储结构和存取方法。输入:系统关系数据结构输出:系统数据库物理结构1.物理结构设计的主要内容:2.物理存储介质类型的选择为了提高系统的安全性,防止系统因介质的损坏而导致数据丢失的危险,学生信息管理系统最好采用基于Windows 2000 RAID-5卷实现的RAID-5级的磁盘阵列,因此需要四块物理磁盘。3.数据库物理位置的选择学生信息管理系统数据库的数据文件安排如下:一个主数据文件,存放在C:Teachdatateachdat1.mdf下;两个次数据文件,分别存放在D:Teachdatateachdat2.mdf和E:Teachdatateachdat3.mdf下;日志文件,存放在F:Teachdatateachlog.ldf下。应用系统可以对四块磁盘进行并行访问,从而提高对磁盘数据的读写效率。4.索引类型的选择教学信息管理系统的核心任务是对学生的学籍信息和考试信息进行有效的管理。其中,数据量最大且访问频率较高的是学生选课信息表。为了提高系统的查询效率,降低系统的查询成本,需要为学生信息表和学生选课信息表建立聚簇索引。5.数据库服务器性能参数配置数据库服务器的内存配置参数、I/O配置参数和操作系统性能配置参数使用系统安装时缺省参数。数据库物理设计阶段的任务是根据具体计算机系统的特点,为给定的数据库模型确定合理的存储结构和存取方法。物理结构设计阶段实现的是数据库系统的内模式,因此它的质量直接决定了整个系统的性能。因此在确定数据库的存储结构和存取方法之前,对数据库系统所支持的事物要进行仔细的分析,获得优化数据库物理设计的参数。物理结构设计是为逻辑数据模型建立一个完整的能实现的数据库结构,包括存储结构和存取方法。若出现数据冗余情况,是因为有某些数据记录不正确,去除了数据文件中的碎片,以保证数据传输的正确性和完整性。循环冗余检查(CRE)是一种数据传输检错功能,对数据进行多项式计算,并将得到的结果附在帧的后面,接收设备也执行类似算法,以保证数据传输的正确性和完整性。若CRC校验不通过,系统重复向硬盘复制数据,陷入死循环,导致复制过程无法完成。2.1.5 数据库实现在进行概念结构设计和物理结构设计之后,对学生信息管理系统系统结构,功能已经分析得比较清楚了,但是还只是停留在文档阶段。数据系统设计的根本目的,是为用户提供一个能够实际运行的系统,并保证系统的稳定和高效。要做到这点,还有两项工作,就是数据库的实施,运行和维护。学生信息管理系统中的表关系图2-5所示。图2-5数据库实施是根据应用系统数据库的关系结构模型和物理结构设计结果,形成基于SQL Server平台应用系统数据库的脚本和数据库设计报告,并进行数据库的具体构建与管理。1.学生个人信息表stunents(学号s_number、姓名s_name、性别sex、出生日期birthday、籍贯native)字段名字段类型长度主键或外键字段值约束对应中文属性名s_numberchar10主键不为空学号s_namechar8不为空姓名sexchar2不为空性别birthdaydatetime8不为空出生日期nativechar20不为空籍贯2.学籍变更信息表schoolregister(记录号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存储过程:在本程序中,为了方便提高程序的运行效率,程序使用了存储过程来实现数据的删除,在查询分析器的定义如下:删除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学分的课程,和成绩的判断触发器,定义如下:实现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概要设计系统开发的总体任务是实现商品进销存管理信息的系统化、规范化和自动化,系统功能分析是在系统开发的总体任务的基础上完成的。通过对信息更改、维护、查询等活动的调查、分析与总结,结合企业的实际,我们可以将系统分为以下五大功能:学生基本情况更新、学生基本情况维护、学生成绩维护、数据维护、密码修改。学生基本情况更新模块该模块主要是对学生信息,包括姓名、学号、班级、政治面貌等信息进行添加、修改、删除和查询操作。学生基本情况维护模块该模块主要是对学生的信息进行维护,学生日常生活中的所有信息基本上都可以通过此模块进行维护。这样做可以加强学生信息的安全程度。学生成绩维护模块该模块主要是对学生的成绩进行查询,添加,和打印,在此模块中,可以通过学生的学号和专业来查询学生的成绩。方便快捷数据维护模块该模块主要实现数据的备份和还原,管理员可以通过此模块来管理数据资源,保证数据资源的可靠性和安全行。密码修改模块该模块用于对密码的修改。其中普通的用户只能更改自己的密码,而管理员可以更改所有的密码。本系统主要包括学生基本情况更新,学生基本情况维护、学生成绩维护、密码修改和数据维护5个大的模块,各个模块的具体功能如图2-6所示:管理员普通用户登陆学生信息管理系统学生基本情况更新学生基本情况维护学生成绩维护数据维护密码修改删除修改查询查询删除添加修改打印查询添加成绩打印备份还原修改自己密码修改所有密码按学号按专业按学号按专业普通用户管理员添加图2-6222程序实现登录模块:登录界面用户验证登录用户的身份信息,只有合法的用户才能进入系统,从而保证系统的安全性。登录界面的运行结果如下图2-7所示:图2-7学籍信息查询模块:学生信息查询界面。主要实现通过学号查询学生的基本信息,包括其姓名、性别、出生日期等信息;方便用户的查找,学籍信息查询界面的运行结果如下图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 IsDate(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 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 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= & 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 sqlIf StuQuery.rs1.EOF Then StudentGrid.Clear StudentGrid.FormatString = | 学 号| 姓 名|性别| 出生日期|班号| 联系电话| 入校时间| 年级编号|班主任编号| 家庭住址| 注释 MsgBox 没有找到符合条件的记录!, vbOKOnly + vbInformation, 提示Else Set StudentGrid.DataSource = StuQuery.rs1 StudentGrid.FormatString = | 学 号| 姓 名|性别| 出生日期|班号| 联系电话| 入校时间| 年级编号|班主任编号| 家庭住址| 注释End IfEnd Sub 第3章 设计总结有关于数据库实验的心得体会,总的来说,受益匪浅。在这次的试验中,我们学到了很多东西,包括建表,导入数据,查询,插入。最重要的是我们有机会用电脑自己进行实践,没接触的时候总是觉得它比较深奥或是不可接近的新型语言,尽管自己对C语言非常感兴趣,但还是有些心理上的陌生感。学习数据库就和我们平时的其它科目学习一样感觉它有永无止境的知识,数据库是我在高中时候听过,到了大学渐渐了解了些,但就其原理性的内容还不知道,也就是根本就不清楚什么是数据库,只是知道一个所谓的中国字典里的名词。我认识它是从我接触实验运作开始的,刚开始就是建立数据库,两种验证模式,没什么东西但还觉得不错。进而就是操作语言了,紧接着就是触发器的使用,进而对数据库高级的使用,等等。 开始知道数据库的时候想学,不知道从何而起,不懂的话怎么问,从什么地方学起。后来到大二开学后有数据库原理必修课,非常高兴。当时感觉SQL Sever数据库管理既然是单独一门课程一定会讲的比较细,也能学到真
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论