软件课程设计报告--实验室设备管理.docx_第1页
软件课程设计报告--实验室设备管理.docx_第2页
软件课程设计报告--实验室设备管理.docx_第3页
软件课程设计报告--实验室设备管理.docx_第4页
软件课程设计报告--实验室设备管理.docx_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

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

文档简介

软件课程设计报告(11-12学年)序号:114实验室设备管理系别:计算机科学与技术班级:计09a-4班姓名:李静学号:09101020423总成绩:评语:指导教师签字: 日期:目录1课题主要内容介绍1.1课题概述 31.2运行环境说明 32系统设计与实现2.1系统分析与设计 42.2系统实现 63系统测试与结果分析 294课题收获总结4.1理论知识应用体会 314.2课题应用软件环境的体会 314.3其它体会 315参考文献 321课题主要内容介绍 1.1课题概述 随着计算机应用的不断深入,各行各业几乎与计算机都有密切的联系,人们的生活已离不开计算机,为了适应现代化发展的需要,提高事业机构的管理水平和办公效率,均以最快的速度引入了计算机,不少企事业单位已经将本单位的计算机连成网络,这样大大加快了企事业单位的办公效率。在学校实验室设备的管理过程中,发现了一些问题。其中如:记录实验室的设备的时候需花费大量的的时间进行人工实现,而且常会出现由于工作管理人员的工作疏忽带来很多错误。因此,开发出了实验室设备的管理软件,实现实验室设备的安排、以及查询,以方便教学过程的各类管理。根据各个实验室的情况进行实验室设备的添加删除,也可以记录设备是否借出,什么时期购买的,是否为固定资产等详细信息,也可以根据设备数量来添加或者删除实验室,并且根据实验室设备的数量将其分配,使他们能够被最大限度的利用,为学校的同学和教师的学习带来便捷。本软件适用于各个中小型实验室,是比较完善的系统管理软件,通过本系统软件,能帮助管理人员利用计算机,快速方便的对实验室设备进行更新和管理,及时购买新设备、维修设备、报废设备进行审批核实,以及方便的维护管理现有设备。通过本系统软件,能帮助管理人员利用计算机,快速方便的对实验室设备进行更新和管理,它使教学管理人员对实验室的管理更方便,减轻管理人员的工作负担。1.2运行环境说明基于microsoft visual studio2010及sql server2005数据库平台开发实验室设备管理系统。该系统采用这两种作为系统设计开发工具,是因为他们都有较高的开发效率,尤其是sql server具有使用方便,可伸缩好,与相应的软件集成度高等的优点,所以本系统开发的过程中,选取他们作为软件的开发工具和数据可管理软件,通过microsoft visual studio2010的活动数据对象与开发数据库互连技术将利用c#开发系统与sql serve数据库连接起来。2系统设计与实现2.1系统分析与设计系统设计思想和原则:设计的原则主要包括实用性原则,可扩展性原则,安全性原则,用户界面设计原则,数据库设计原则,这个软件满足了实际的工作需要,用户接口和操作界面的设计做到了界面美观大方,操作简明便要,对用户的技能型的要求尽量的很低,只需要简单地操作就可以完成所有的内容,并且这个实验室设备管理系统具有良好的的可扩展性和可维护性,在适应不同的情况下,是系统能在原来的基础上进行改进和维护,这个软件能够是数据库与前台有好的连接,做到前台的操作来改变后台的数据库的理想效果,不会产生数据的冲突,同时这个界面应当直观明了,同时在各个界面的相应之处还有相关信息提示使得用户更好地操作,做到了易学易用易管理。系统功能图:数据库设计:数据库设计主要是进行数据库的逻辑设计,即将数据按一定的分类、分组系统和逻辑层次组织起来,是面向用户的。数据库设计时需要综合用户之间的存档数据和数据需求,分析各个数据之间的关系,按照dbms提供的功能和描述工具,设计出规模适当、正确反映数据关系、数据冗余少、存取效率高、能满足多种查询要求的数据模型,数据库是一种存储数据并对数据进行操作的工具。数据库的作用在于组织和表达信息,简而言之,数据库就是信息的集合。关系数据库中包含了多个数据表的信息。密码用户名管理员实验号实验室管理实验名铭设备日期价格类型设备名设备号数量1登陆表列名数据类型长度允许空用户名varchar50not null密码varchar50not null登陆权限char10not null2设备基本信息表列名数据类型长度允许空设备型号varchar10not null设备名varchar20not null规格varchar10not null单价float8null购买日期datetime8null生产厂家varchar20null购买人varchar10null数量int4null4申请表列名数据类型长度允许空设备名varchar10not null日期datatime8not null规格varchar10not null数量int4null申请人varchar10null2.2系统实现主要代码及测试结果namespace equipment2 public partial class form1 : form public form1() initializecomponent(); private void treeview1_afterselect(object sender, treevieweventargs e) label1.text = e.node.text; label32.text = 您当前选择的是: + e.node.text; private void button1_click(object sender, eventargs e) button2.enabled = true; sqlconnection conn; this.tabcontrol1.selectedtab = tabpage1; conn = new sqlconnection(server=.;database=equipment;integrated security=true); sqlcommand cmd = new sqlcommand(select * from wangluo, conn); sqldataadapter sda = new sqldataadapter(); sda.selectcommand = cmd; dataset ds = new dataset(); sda.fill(ds, wangluo); datagridview1.datasource = ds.tables0; datagridview1.show(); conn.close(); private void button2_click(object sender, eventargs e) label3.hide(); this.tabcontrol1.selectedtab = tabpage2; int erow = datagridview1.currentcell.rowindex; int ecol = datagridview1.currentcell.columnindex; label2.text = datagridview1.rowserow.cellsecol.value.tostring(); sqlconnection conn1; conn1= new sqlconnection(server=.;database=equipment;integrated security=true); conn1.open(); sqlcommand cmd1 = new sqlcommand(); cmd1.connection = conn1; cmd1.commandtext = select * from wangluo; cmd1.commandtype = commandtype.text; sqldatareader sdr1 = cmd1.executereader(); int flag=0; while (sdr1.read() string ttno = sdr1equno.tostring(); if (ttno=label2.text) textbox1.text = sdr1equno.tostring(); textbox2.text = sdr1equprice.tostring(); textbox3.text = sdr1equname.tostring(); textbox4.text = sdr1equcount.tostring(); textbox5.text = sdr1equbrand.tostring(); textbox6.text = sdr1equbuytime.tostring(); textbox7.text = sdr1equtype.tostring(); textbox8.text = sdr1equplace.tostring(); string hard = sdr1equhard.tostring(); if (hard=是) checkbox1.checkstate = checkstate.checked; string stay = sdr1equstay.tostring(); if (stay=是) checkbox2.checkstate = checkstate.checked; string borrow=sdr1equborrow.tostring(); textbox9.text = sdr1equperson.tostring(); if (borrow=是) checkbox3.checkstate = checkstate.checked; flag = 1; conn1.close(); private void form1_load(object sender, eventargs e) / todo: 这行代码将数据加载到表“equipmentdataset.wangluo”中。您可以根据需要移动或删除它。 this.wangluotableadapter.fill(this.equipmentdataset.wangluo); this.tabcontrol3.region = new region(new rectanglef(this.tabpage6.left, this.tabpage6.top, this.tabpage6.width, this.tabpage6.height); private void button5_click(object sender, eventargs e) this.tabcontrol3.selectedtab = tabpage7; private void button3_click(object sender, eventargs e) sqlconnection conn2; dataset ds2; sqldataadapter sda; conn2 = new sqlconnection(server=.;database=equipment;integrated security=true); sqlcommand cmd2 = new sqlcommand(select * from wangluo, conn2); sda = new sqldataadapter(); sda.selectcommand = cmd2; ds2 = new dataset(); sda.fill(ds2, wangluo); datatable dt = ds2.tableswangluo; sda.fillschema(dt, schematype.mapped); datarow dr = dt.rows.find(textbox1.text); drequname = textbox3.text.trim(); drequprice = textbox2.text.trim(); drequcount = textbox4.text.trim(); drequbrand = textbox5.text.trim(); drequbuytime = textbox6.text.trim(); drequtype = textbox7.text.trim(); drequplace = textbox8.text.trim(); drequperson = textbox9.text.trim(); if (checkbox1.checkstate = checkstate.checked) drequhard = 是.trim(); else drequhard = 否.trim(); if (checkbox2.checkstate = checkstate.checked) drequstay = 是.trim(); else drequstay = 否.trim(); if (checkbox3.checkstate = checkstate.checked) drequborrow = 是.trim(); else drequborrow = 否.trim(); sqlcommandbuilder cmdbuilder = new sqlcommandbuilder(sda); sda.update(dt); messagebox.show(修改成功); private void button6_click(object sender, eventargs e) this.tabcontrol3.selectedtab = tabpage6; private void button8_click(object sender, eventargs e) int flagtt = 1; sqlconnection contt = new sqlconnection(server=.;database=equipment;integrated security=true); contt.open(); sqlcommand cmdtt = new sqlcommand(select * from wangluo, contt); sqldatareader sdrtt = cmdtt.executereader(); while (sdrtt.read() if (sdrttequno.tostring() = textbox18.text) messagebox.show(该编号已存在!); flagtt = 0; break; contt.close(); int flag = 1; string no = textbox18.text.tostring(); int eno=convert.toint32(no); string ename = textbox16.text.tostring(); string ebrand = textbox14.text.tostring(); string etype = textbox12.text.tostring(); string ehard; if (checkbox6.checkstate = checkstate.checked) ehard = 是; else ehard = 否; string price = textbox17.text.tostring(); int eprice = convert.toint32(price); string count = textbox15.text.tostring(); int ecount = convert.toint32(count); string ebuytime = textbox13.text.tostring(); string eplace = textbox11.text.tostring(); string eborrow; if (checkbox4.checkstate = checkstate.checked) eborrow = 是; else eborrow = 否; string eperson = textbox10.text.tostring(); string estay; if (checkbox5.checkstate = checkstate.checked) estay = 是; else estay = 否; string emname = 网络安全实验室; string mno = 10001; int emno = convert.toint32(mno); sqlconnection con = new sqlconnection(server=.;database=equipment;integrated security=true); con.open(); string sql = insert into wangluo values( + ename + , + eno + , + ebrand + , + etype + , + ehard + , + eprice + , + ecount + , + ebuytime + , + eplace + , + eborrow + , + eperson + , + estay + , + emname + , + eno + ); sqlcommand cmd = new sqlcommand(sql, con); cmd.executenonquery(); con.close(); messagebox.show(添加成功); private void button9_click(object sender, eventargs e) button2.enabled = false; label3.hide(); this.tabcontrol1.selectedtab = tabpage3; private void button7_click(object sender, eventargs e) this.tabcontrol3.selectedtab = tabpage6; private void button10_click(object sender, eventargs e) this.tabcontrol3.selectedtab = tabpage6; private void button4_click_1(object sender, eventargs e) if (label1.text = 网络安全实验室) this.tabcontrol3.selectedtab = tabpage8; private void button11_click(object sender, eventargs e) this.tabcontrol2.selectedtab = tabpage4; sqlconnection conn1; conn1 = new sqlconnection(server=.;database=equipment;integrated security=true); conn1.open(); sqlcommand cmd1 = new sqlcommand(); cmd1.connection = conn1; cmd1.commandtext = select * from room; cmd1.commandtype = commandtype.text; sqldatareader sdr1 = cmd1.executereader(); while (sdr1.read() string ttname = sdr1rname.tostring(); if (ttname =textbox21.text) textbox20.text = sdr1rno.tostring(); textbox19.text = sdr1rname.tostring(); richtextbox1.text = sdr1rintro.tostring(); conn1.close(); private void button12_click(object sender, eventargs e) sqlconnection conn2; dataset ds2; sqldataadapter sda; conn2 = new sqlconnection(server=.;database=equipment;integrated security=true); sqlcommand cmd2 = new sqlcommand(select * from room, conn2); sda = new sqldataadapter(); sda.selectcommand = cmd2; ds2 = new dataset(); sda.fill(ds2, room); datatable dt = ds2.tablesroom; sda.fillschema(dt, schematype.mapped); datarow dr = dt.rows.find(textbox20.text); drrname = textbox19.text.trim(); drrno = textbox20.text.trim(); drrintro = richtextbox1.text.trim(); sqlcommandbuilder cmdbuilder = new sqlcommandbuilder(sda); sda.update(dt); messagebox.show(修改成功!); textbox21.text = ; textbox20.text = ; textbox19.text = ; richtextbox1.text = ; private void button15_click(object sender, eventargs e) sqlconnection contt = new sqlconnection(server=.;database=equipment;integrated security=true); contt.open(); sqlcommand cmdtt = new sqlcommand(select * from room, contt); sqldatareader sdrtt = cmdtt.executereader(); while (sdrtt.read() if (sdrttrno.tostring() = textbox22.text) messagebox.show(该编号已存在!); break; contt.close(); int flag = 1; string no = textbox22.text.tostring(); int rno = convert.toint32(no); string rname = textbox23.text.tostring(); string rintro = richtextbox2.text.tostring(); sqlconnection con = new sqlconnection(server=.;database=equipment;integrated security=true); con.open(); string sql = insert into room values( + rname + , + rno + , + rintro + ); sqlcommand cmd = new sqlcommand(sql, con); cmd.executenonquery(); con.close(); messagebox.show(添加成功); textbox22.text = ; textbox23.text = ; richtextbox2.text = ; private void button16_click(object sender, eventargs e) this.tabcontrol2.selectedtab = tabpage5; button16.visible = false; label27.visible = false; textbox21.visible = false; button11.visible = false; label31.visible = true; private void button14_click(object sender, eventargs e) this.tabcontrol2.selectedtab = tabpage4; button16.visible =true; label27.visible = true; textbox21.visible = true; button11.visible = true; label31.visible = false; private void button13_click(object sender, eventargs e) string tt = textbox20.text; sqlconnection contt = new sqlconnection(server=.;database=equipment;integrated security=true); contt.open(); sqlcommand cmdtt = new sqlcommand(delete from room where rno = + tt +, contt); cmdtt.executenonquery(); contt.close(); messagebox.show(删除成功!); textbox20.text = ; textbox21.text = ; textbox19.text = ; richtextbox1.text = ; private void button18_click(object sender, eventargs e) this.tabcontrol3.selectedtab = tabpage6; private void button17_click(object sender, eventargs e) this.tabcontrol3.selectedtab = tabpage6;namespace equipment2 public partial class form1 : form public form1() initializecomponent(); private void treeview1_afterselect(object sender, treevieweventargs e) label1.text = e.node.text; label32.text = 您当前选择的是: + e.node.text; private void button1_click(object sender, eventargs e) button2.enabled = true; sqlconnection conn; this.tabcontrol1.selectedtab = tabpage1; conn = new sqlconnection(server=.;database=equipment;integrated security=true); sqlcomma

温馨提示

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

评论

0/150

提交评论