还剩21页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
课程设计报告实验室设备管理系统的设计与实现课程《数据库原理及应用》班级姓名学号指导教师时间2012年5月21日至2012年5月25日指导教师对课程设计(论文)的评语(工作态度、任务完成情况、能力水平、设计说明书(论文)的撰写和图纸质量等)成绩指导教师签字年月日目录TOC\o1-2\h\z\u第一章开发背景4第二章功能描述5第三章业务流程分析6第四章数据流程分析
74.1数据流程图
74.2数据字典7第五章概念模型设计9第六章逻辑模型设计和优化11第七章物理设计和实施12第八章系统测试14第九章课程设计心得体会21参考文献22第一章开发背景现今实验室管理一般都以办公人员进行批次记录,其的繁索给具有强烈时间观念的办公人员带来了诸多不便,实验室设备管理缺少一种完善的设备管理软件,为了对设备基本情况管理方便,开发人员完成了全面的调查与分析,同时与目标用户进行了多次深入沟通,并在次基础上着手开发《实验室管理系统》软件通过课程设计,让学生能够全面了解数据库应用系统的整个开发过程,验证课堂教学中的理论,掌握数据库系统的基本概念,基本原理及应用技术,掌握SQL语言,真正实现实践检真理信息社会的高科技,商品经济化的高效益,使计算机的应用已普及到经济和社会生活的各个领域实验室设备管理迫切需要与计算机联系,不仅可以减轻办公人员的工作同时更能让实验室设备系统管理计算机虽然与人类的关系愈来愈密切,还有人由于计算机操作不方便继续用手工劳动为了适应现代社会人们高度强烈的时间观念,实验室设备管理系统软件将会为实验室设备管理带来了极大的方便第二章功能描述经过调研及分析,实验室设备管理系统主要完成以下功能
(1)设备入库信息管理主要是管理员对新增加的设备进行登记,包括编号、设备名、型号、规格、单价、数量、购置日期、生产厂家、购买人等
(2)设备运行状况统计可按照设备名称、机房名称以及日期等统计实验室设备运行状况该功能主要是为了使用户能够实时掌握实验室设备的运行状况,所做的主要操作就是查询和统计,所以数据以只读形式出现
(3)报修设备管理对于有严重问题(故障)的需要修理的设备,记录修理日期、设备名、修理厂家、修理费、责任人等,随时对设备修理情况进行统计,并能够按类别、修理厂家和修理日期查询修理情况
(4)报废设备管理对已经彻底损坏的设备作报废处理,详细记录报废设备的有关信息,并随时对设备报废情况进行统计和查询,要求能够按类别和时间段(年、月或季度)查询第三章业务流程分析业务流程图是为了让我们一目了然的看清数据库的运行过程,让设计管理员知道数据库的结构,加以分析已熟悉它的工作过程并快速建立数据库,数据库设计人员在设计数据库时的模型图学校门诊管理系统业务流程图如图3-1图3-1实验设备管理系统业务流程图四章数据流程分析
4.1数据流程图数据流程图是为了让我们一目了然的看清数据库中的数据的运行过程,让设计管理员知道数据库的数据流向,加以分析已熟悉它的工作过程并快速建立数据库,数据库设计人员在设计数据库时的模型图图4-1实验设备管理数据流程图
4.2数据字典
(1)数据流的描述数据流编号D001数据流名称设备入库信息简述所要入库设备的信息数据流来源管理员数据流去向设备入库管理数据流组成编号+设备名+型号+规格等数据流量1000/天高峰流量3000/天数据流编号D002数据流名称设备运行信息简述管理员登记设备是否良好运行管理员发现设备受损的信息数据流来源设备入库信息数据流去向管理员数据流组成编号+设备名+机房名等数据流量100/天高峰流量500/天数据流编号D003数据流名称设备彻底受损简述管理员发现设备受损的信息数据流来源管理员数据流去向报修设备管理数据流组成编号+日期+设备名+机房名等数据流量100/天高峰流量400/天数据流编号D004数据流名称设备运行状况简述管理员发现设备彻底受损的信息数据流来源报修设备管理数据流去向设备报废信息数据流组成日期+设备名+机房名+报废情况等数据流量100/天高峰流量400/天
(2)处理逻辑的描述处理逻辑编号P001处理逻辑名称设备入库管理简述管理设备入库输入的数据流D001设备入库信息处理描述根据编号设备名,型号,规格等信息,进行设备入库管理,管理出设备入库后所要进入的机房名输出的数据流D002设备运行信息处理频率500次/天处理逻辑编号P002处理逻辑名称设备运行状况简述记录设备是否良好运行输入的数据流D002设备运行信息处理描述根据实验室设备的是否良好运行,将此情况记录下来,管理员进行处理处理频率1000次/天处理逻辑编号P003处理逻辑名称保修设备管理简述设备受损情况输入的数据流D003设备受损处理描述管理员检查设备是否受损,若受损则进行报修处理,若彻底受损则进行报废处理处理频率100次/天
(3)数据存储的描述数据存储编号F001数据存储名称设备信息简述入库设备的基本信息数据存储组成编号+设备名+型号+规格+单价+数量+购置日期+生产日期+生产家+购买人关键字编号,设备名,型号相关联的处理P001数据存储编号F002数据存储名称报修设备信息简述受损设备信息登录数据存储组成编号+修理日期+设备名+型号+修理厂家+修理费+负责人关键字编号,修理日期,修理厂家相关联的处理P002,P003数据存储编号F003数据存储名称报废设备信息简述报废设备信息登录数据存储组成编号+报废日期+设备名+型号+报废情况+生产厂家关键字编号,报废日期相关联的处理P002,P003数据存储编号F004数据存储名称设备运行状况信息简述设备某天的运行状况登陆数据存储组成设备名+机房号+日期+型号+规格+生产厂家关键字设备名,机房号,日期相关联的处理P002
(4)外部实体的描述外部实体编号S001外部实体名称管理员简述管理实验室设备的人输出的数据流D001,D003第五章概念模型设计用户的需求具体体现在对各种信息的提供、保存、更新和查询,这就要求数据库能充分满足各种数据的输出和输入通过对上述系统功能的分析,针对实验室设备管理要求,设计如下所示的数据项1实验室设备信息包括类别、型号、单价、数量、购买日期、责任人、生产厂家、生产厂商、购买人保修时间图5-1实验设备实体E-R图2设备运行状况包括机房名称、日期、运行图5-2设备运行实体E-R图3设备保修状况保修日期、修理厂家、保修费、责任人、日期图5-3设备保修实体E-R图4设备报废状况包括设备、生产厂家、报废日期、责任人、生产日期图5-4设备报废E-R图第六章逻辑模型设计和优化根据实验设备管理系统各实体E-R图写出各信息的情况并根据的需求分析学校门诊管理系统数据库中各个表中的数据结果如下列表所示,每个表格表示在数据库中的一个表的信息表-1设备管理表编号设备名型号规格单价数量购置日期生产日期生产厂家购买人表-2运行状况表编号设备名型号修理日期修理厂家修理费负责人表-3报废信息表设备名机房号日期型号规格生产厂家运行状况表-4保修信息表编号报废日期设备号型号报废情况生产厂家第七章物理设计和实施得到系统逻辑模型后,就该进行数据库的物理设计和实施数据库了,物理设计主要是要确定数据库的存储路径、存储结构以及如何建立索引等,可以采用系统的默认设置数据库实施主要包括在具体的DBMS中创建数据库和表的过程,本设计所选用的DBMS为SQLSERVER2005,有关创建数据库和关系表的SQL语句如下所示
(1)创建数据库/*==============================================================*//*databaseExp*//*==============================================================*/createdatabaseExp
(2)创建表/*==============================================================*//*Table:ExpId*//*==============================================================*/createtableExpIdExpnamechar100notnull/*登录名*/Exppwdintnotnull/*密码*/EXECsp_addlogin1123;EXECsp_adduser1;/*登录名*//*==============================================================*//*Table:ExpMg设备管理信息表*//*==============================================================*/createtableExpMgExidintnotnull/*编号*/Exnamechar100notnull/*设备名*/Exmodelchar100notnull/*型号*/Exsizeintnull/*规格*/Expriceintnull/*单价*/Exquantityintnull/*数量*/Exdateintnull/*生产日期*/ExsellDateintnull/*购置日期*/Exsellerchar100null/*生产厂家*/Exbuyerchar100null/*购买人*/constraintPK_ExpMgprimarykeyExidEXnameExmodel/*主键约束*//*==============================================================*//*Table:ExpSt运行状况表*//*==============================================================*/createtableExpStExnamechar100notnull/*设备名*/Exhousechar100notnull/*机房名*/Extimeintnotnull/*日期*/Exmodelchar100null/*型号*/Exsizeintnull/*规格*/Exsellerchar100null/*生产厂家*/Exconchar100null/*运行情况*/constraintPK_ExpStprimarykeyEXnameExhouseExtime/*主键约束*//*==============================================================*//*Table:ExpRe报修信息表*//*==============================================================*/createtableExpReExidintnotnull/*编号*/Exnamechar100null/*设备名*/Exmodelchar100null/*型号*/Exredateintnotnull/*修理日期*/Exreerchar100notnull/*修理厂家*/Exrefeeintnull/*修理费*/Exprichar100null/*负责人*/constraintPK_ExpreprimarykeyExidExredateExreer/*主键约束*//*==============================================================*//*Table:ExpSc报废信息表*//*==============================================================*/createtableExpScExidintnotnull/*编号*/Exnamechar100null/*设备名*/Exmodelchar100null/*型号*/Exscdateintnotnull/*报废时间*/Exscconchar100null/*报废情况*/Exsellerchar100null/*生产厂家*/constraintPK_ExpscprimarykeyExidExscdate/*主键约束*/第八章系统测试
(1)登录界面8-1登陆界面主要代码privatevoidButton1_ClickobjectsenderEventArgse{ifTextBox
1.Text==//判断用户是否输入了用户名{MessageBox.Show用户名不能为空;}ifTextBox
2.Text=={MessageBox.Show密码不能为空;//判断用户是否输入了密码}else{//ifTextBox
1.Text.Trim.ToString==登录名//{stringConStr=server=.;integratedsecurity=SSPI;database=exp;SqlConnectioncon=newSqlConnectionConStr;stringSqlStr=select*fromExpIdwhereExpname=+TextBox
1.Text.Trim+andExppwd=+TextBox
2.Text.Trim+;SqlDataAdapterada=newSqlDataAdapterSqlStrcon;DataTabledt=newDataTable;ada.Filldt;inti=dt.Rows.Count;ifi0{基本查询=new基本查询;.Show;}else{MessageBox.Show用户名或密码不正确,请重新输入!信息提示MessageBoxButtons.OKMessageBoxIcon.Information;}}}privatevoidButton2_ClickobjectsenderEventArgse{this.Close;}
(2)查询设备基本信息查询8-2设备信息查询界面主要代码privatevoid设备报修信息ToolStripMenuItem_ClickobjectsenderEventArgse{设备报修信息=new设备报修信息;.Show;}privatevoid设备运行状况ToolStripMenuItem_ClickobjectsenderEventArgse{设备运行状况=new设备运行状况;.Show;}privatevoid设备报废信息ToolStripMenuItem_ClickobjectsenderEventArgse{设备报废信息=new设备报废信息;.Show;}privatevoid添加设备信息ToolStripMenuItem_ClickobjectsenderEventArgse{添加设备信息=new添加设备信息;.Show;}privatevoid设备管理ToolStripMenuItem1_ClickobjectsenderEventArgse{设备管理=new设备管理;.Show;}
(3)设备运行状况8-3设备运行界面主要代码privatevoidButton4_ClickobjectsenderEventArgse{stringConStr=server=.;integratedsecurity=SSPI;database=exp;SqlConnectioncon=newSqlConnectionConStr;stringSqlstr=select*fromExpStwhereExnamelike%+TextBox
1.Text.Trim+%andExhouselike%+TextBox
2.Text.Trim+%andExtimelike%+TextBox
9.Text.Trim+%;SqlDataAdapterada=newSqlDataAdapterSqlstrcon;DataSetds=newDataSet;ada.Filldstable;this.dataGridView
1.DataSource=ds.Tables
[0].DefaultView;Show;}
(4)设备管理界面8-4设备管理界面主要代码privatevoid设备管理_LoadobjectsenderEventArgse{try{stringConStr=server=.;integratedsecurity=SSPI;database=exp;SqlConnectioncon=newSqlConnectionConStr;stringSqlStr=select*fromExpMg;SqlDataAdapterada=newSqlDataAdapterSqlStrcon;DataSetds=newDataSet;ada.Fillds;this.dataGridView
1.DataSource=ds.Tables
[0].DefaultView;}catch{return;}}
(5)报废信息界面8-5设备报废界面主要代码privatevoid设备报废信息_LoadobjectsenderEventArgse{}privatevoidButton1_ClickobjectsenderEventArgse{stringConStr=server=.;integratedsecurity=SSPI;database=exp;SqlConnectioncon=newSqlConnectionConStr;stringSqlstr=select*fromExpScwhereExmodellike%+TextBox
1.Text.Trim+%andExscdatelike%+TextBox
2.Text.Trim+%;SqlDataAdapterada=newSqlDataAdapterSqlstrcon;DataSetds=newDataSet;ada.Filldstable;this.dataGridView
1.DataSource=ds.Tables
[0].DefaultView;Show;}
(6)报修信息界面8-6设备保修界面主要代码privatevoid设备报修信息_LoadobjectsenderEventArgse{}privatevoidButton1_ClickobjectsenderEventArgse{stringConStr=server=.;integratedsecurity=SSPI;database=exp;SqlConnectioncon=newSqlConnectionConStr;stringSqlstr=select*fromExpRewhereExmodellike%+TextBox
1.Text.Trim+%;//andExredatelike;//+TextBox
2.Text+%andExreerlike+TextBox
3.Text+%;SqlDataAdapterada=newSqlDataAdapterSqlstrcon;DataSetds=newDataSet;ada.Filldstable;this.dataGridView
1.DataSource=ds.Tables
[0].DefaultView;Show;}第九章课程设计心得体会在这学期的实验中,在杨慧老师的带领下,在收获知识的同时,还收获了阅历,收获了成熟,在此过程中,我们通过查找大量资料,请教老师,以及不懈的努力,不仅培养了独立思考、动手操作的能力,在各种其它能力上也都有了提高更重要的是,在实验课上,我们学会了很多学习的方法而这是日后最实用的,真的是受益匪浅要面对社会的挑战,只有不断的学习、实践,再学习、再实践通过此次课程设计,使我更加扎实的掌握了有关数据库方面的知识,在设计过程中虽然遇到了一些问题,但经过一次又一次的思考,一遍又一遍的检查终于找出了原因所在,也暴露出了前期我在这方面的知识欠缺和经验不足实践出真知,通过亲自动手制作,使我们掌握的知识不再是纸上谈兵过而能改,善莫大焉在课程设计过程中,我们不断发现错误,不断改正,不断领悟,不断获取最终的检测调试环节,本身就是在践行“过而能改,善莫大焉”的知行观这次课程设计终于顺利完成了,在设计中遇到了很多问题,最后在老师的指导下,终于游逆而解在今后社会的发展和学习实践过程中,一定要不懈努力,不能遇到问题就想到要退缩,一定要不厌其烦的发现问题所在,然后一一进行解决,只有这样,才能成功的做成想做的事,才能在今后的道路上劈荆斩棘,而不是知难而退,那样永远不可能收获成功,收获喜悦,也永远不可能得到社会及他人对你的认可!课程设计诚然是一门专业课,给我很多专业知识以及专业技能上的提升,同时又是一门讲道课,一门辩思课,给了我许多道,给了我很多思,给了我莫大的空间同时,设计让我感触很深使我对抽象的理论有了具体的认识在这里要感谢学校学院领导和老师们给我们实际操作的机会和为创造了良好的学习条件在本次课程设计中,指导老师认真负责的工作态度,严谨的治学精神和深厚的理论水平都使我受益匪浅无论在理论上还是在实践中,都给与我很大的帮助,使我得到不少的提高这对于我以后的工作和学习都有一种巨大的帮助在系统开发过程中牛荣老师给予我们很大的帮助,帮助解决了不少的难点,使得系统能够及时开发完成,还有许多同学同样给与了我不少的帮助,衷心的感谢牛荣老师和同学们的精心指导和帮助实践是巩固所学知识最好的方法这次的系统设计使我学到了很多知识和编程技巧也使我自己的水平提升到了一个新的台阶再次感谢给予我帮助的老师和同学们参考文献
[1]郭江.SQLServer2005数据库技术与应用.北京人民邮电出版社2002
[2]应宏.数据库原理.重庆西南师范大学出版社2001
[3]黄健全、丁宝康.数据库实用教程.北京清华大学出版社2001
[4]高金兰.数据库原理与SQLServer应用.北京科学出版社2002
[5]郑阿奇.SQLServer使用教程[M].第二版.北京电子工业出版社,2005
[6]钱学忠.数据库原理及应用.北京北京邮电大学出版社,2007
[7]蔡奎春等.Delphi数据库开发实例解析[M].北京机械工业出版社,2004
[8]刘斌等.Delphi7数据库高级教程[M].北京清华大学出版社2004
[9]谭浩强主编.VisualBasic程序设计
(二)教程.清华大学出版社,2002年
[10]柳青等编.VisualBasic程序设计教程.高等教育出版社,2002年
[11]范立南.SQLServer2000实用教程.北京清华大学出版社,2004年
[12]孙燕等编.VisualBasic程序设计.高等教育出版社,2000年
[13]萨师烜.王珊编.数据库系统概论.北京高等教育出版社,2003年
[14]杨志强.VisualBasic程序设计教程.北京高等教育出版社,2003年报废信息设备信息类别/时间段反馈管理员P
2.1用户登录P
2.2设备查询P
2.5设备审核P
2.6报废设备处理用户采购部设备使用状况实验室设备管理系统设备查询管理现有设备管理设备购进管理设备使用管理按类别查询按时间段查询设备名机房名日期是否运行行设备名修理厂家保修费保修日期责任人日期设备名生产厂家报废日期责任人生产日期。