版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、广西工学院 vc+.net课程设计学生管理系统设计说明书学校: 广西工学院 系别: 计算机 工程系 班别: 计y052班 姓名: 学号: 目录一、课程设计项目3二、 学生管理系统需求分析31. 学生管理系统功能需求31.1信息操作功能31.2查询功能31.3统计功能31.4分析功能32. 学生管理系统性能需求42.1时间相应42.2容错能力4三. 学生管理系统设计41. 学生管理系统模块设计41.1主模块41.2信息插入模块51.3信息删除模块51.4信息修改模块51.5信息查询模块62. 学生管理系统数据库设计62.1学生表62.2班级信息表62.3课程表72.4成绩表73.内部类设计73.
2、1学生类73.2班级类83.3课程类83.4成绩类9四、 学生管理系统代码实现91. 学生管理系统模块代码实现91.1主模块91.2信息插入模块121.2信息删除模块151.3信息修改模块191.4信息查询模块232. 内部类代码实现252.1学生类252.2班级类282.3课程类312.4成绩类34五、学生管理系统功能测试371插入信息测试372删除信息测试383修改信息测试404查询信息测试41六 课程设计总结和感想42一、课程设计项目学生管理系统。2、 学生管理系统需求分析1. 学生管理系统功能需求本次.net课程设计实习所涉及的学生信息管理系统是一个简单的管理系统,用于为某个院系按专业
3、管理学生的基本信息、课程信息和学生成绩信息以及班级信息。系统功能主要分为:信息操作功能、查询功能、统计功能和分析功能。1.1信息操作功能1) 学生基本信息的增加、删除、修改。学生信息包括:学号,姓名,性别,出生日期,籍贯和家庭住址。2) 学生成绩信息的添加、删除、修改。学生成绩信息包括:学号、课程号和成绩。3) 班级信息添加、删除、修改。班级信息包括:班号、所在院系、专业名称、学制和入学时间。4) 课程信息的添加、删除、修改。课程信息包括:课程号、课程名称、课程类型、开课学期、课时数和学分。1.2查询功能1) 查询学生基本信息。(通过学号、姓名、系别、籍贯等)2) 查询成绩基本信息。(通过学号
4、、课程号、等)3) 查询课程基本信息。(通过课程号、课程名等)4) 查询班级基本信息。(通过班级号、班级名、所在院系等)1.3统计功能1) 统计某个学生的在所有学期课程总平均分,并且在状态栏上显示。1.4分析功能1) 对某个班级某一门课程的成绩分布进行分析,并且以直方图的形式显示出来。2. 学生管理系统性能需求2.1时间相应1) 在用户可以忍受的范围内,相应用户的操作。2.2容错能力1) 能够有一定的容错提示,数据库连接出错时或者查询出错时候给出错误提示。3. 学生管理系统设计1. 学生管理系统模块设计1.1主模块1.2信息插入模块1.3信息删除模块1.4信息修改模块1.5信息查询模块2. 学
5、生管理系统数据库设计2.1学生表2.2班级信息表2.3课程表2.4成绩表3.内部类设计我单独分别设计了4个类,来完成对数据库中的表进行操作。这些类把用户界面和数据库操作分离开来,实现了用户界面层和数据操作层的分离,更加清晰的把整个软件架构表达出来。3.1学生类class student public string strcon; public oledbconnection conn; public oledbcommand cmd; public student(); public void insert(string studentno, string studentname, strin
6、g studentsex, string studentbirth, stringstudentnative, string studentaddress); public void delete(string studentno); public dataset select(string selectype,string item); public dataset selectall(); public void update(string studentno, string studentname, string studentsex, string studentbirth, stri
7、ng studentnative, string studentaddress);3.2班级类class classinfo public string strcon; public oledbconnection conn; public oledbcommand cmd; public classinfo(); public void insert(string classno, string classdepart, string special, string studyyears, string entertime); public void delete(string classn
8、o); public dataset select(string selectype,string item); public dataset selectall(); public void update(string classno, string classdepart, string special, string studyyears, string entertime);3.3课程类class coursepublic string strcon;public oledbconnection conn;public oledbcommand cmd;public course();
9、 public void insert(string courseno, string coursename, string coursetype, string courseopenteam, string coursehours, string coursecredi); public void delete(string courseno); public dataset select(string selectype,string item); public dataset selectall(); public void update(string courseno, string
10、coursename, string coursetype, string courseopenteam, string coursehours, string coursecredi); 3.4成绩类class score public string strcon; public oledbconnection conn; public oledbcommand cmd; public score() ; public void insert(string studentno, string courseno, string coursescore); public void delete(
11、string studnetno,string courseno); public dataset select(string type, string studentno, string courseno); public dataset selectall(); public void update(string studentno, string courseno, string coursescore);4、 学生管理系统代码实现1. 学生管理系统模块代码实现1.1主模块namespace studentmanagersys public partial class form1 : f
12、orm public form1() initializecomponent(); private void treeview1_afterselect(object sender, treevieweventargs e) switch (e.node.text) case 学生信息: shouwstudentinfo(); break; case 班级信息: shouwclassinfo(); break; case 课程信息: shouwcoureinfo(); break; case 成绩信息: shouwscoreinfo(); break; private void shouwst
13、udentinfo() student stu = new student(); dataset stuinfo; stuinfo = stu.selectall(); datagridview1.datasource = stuinfo; datagridview1.datamember = infom; private void shouwclassinfo() classinfo cla = new classinfo(); dataset clainfo; clainfo = cla.selectall(); datagridview1.datasource = clainfo; da
14、tagridview1.datamember = infom; private void shouwcoureinfo() course cou = new course(); dataset couinfo; couinfo = cou.selectall(); datagridview1.datasource = couinfo; datagridview1.datamember = infom; private void shouwscoreinfo() score sco = new score(); dataset scoinfo; scoinfo = sco.selectall()
15、; datagridview1.datasource = scoinfo; datagridview1.datamember = infom; private void 插入数据toolstripmenuitem_click(object sender, eventargs e) insertfrom from = new insertfrom(); from.show(); private void 删除数据toolstripmenuitem_click(object sender, eventargs e) deleteform from = new deleteform(); from.
16、show(); private void 修改数据toolstripmenuitem_click(object sender, eventargs e) modifyform from = new modifyform(); from.show(); private void 查询数据toolstripmenuitem_click(object sender, eventargs e) searchform from = new searchform(); from.show(); private void 关于这个软件toolstripmenuitem_click(object sender
17、, eventargs e) messagebox.show(作者信息:计y052班 罗鑫 200502001071n); 1.2信息插入模块namespace studentmanagersys public partial class insertfrom : form /插入学生信息用到的数据 public string studnetno; public string studentname; public string sex; public string ative; public string address; public string birth; /插入班级信息用到的数据
18、public string classno; public string depart; public string specical; public string studyears; public string entertime; /插入课程信息用到的数据 public string courseno; public string coursename; public string coursetype; public string openterm; public string ccoursehours; public string credit; /插入成绩信息需要的数据 publi
19、c string score; public insertfrom() initializecomponent(); /插入学生信息,确认按钮消息相应函数 private void button1_makesure_click(object sender, eventargs e) studnetno = textbox1.text; studentname = textbox2.text; if (combobox1.text = 男) sex = 0; else sex = 1; ative = textbox3.text; address = textbox4.text; birth =
20、 datetimepicker1.value.tostring(yyyy-mm-dd); student stu = new student(); stu.insert(studnetno, studentname, sex, birth, ative, address); this.close(); /插入学生信息,重置按钮消息相应函数 private void button1_reset_click(object sender, eventargs e) textbox1.text = ; textbox2.text = ; textbox3.text = ; textbox4.text
21、= ; datetimepicker1.text = ; combobox1.text = 男; /插入班级信息,确认按钮消息相应函数 private void button1_click(object sender, eventargs e) classno = textbox5.text; depart = textbox8.text; specical = textbox9.text; studyears = textbox6.text; entertime = datetimepicker2.value.tostring(yyyy-mm-dd); classinfo cla = new
22、 classinfo(); cla.insert(classno, depart, specical, studyears, entertime); this.close(); /插入班级信息,重置按钮消息相应函数 private void button2_click(object sender, eventargs e) textbox5.text = ; textbox8.text = ; textbox9.text = ; textbox6.text = ; datetimepicker2.text = ; /插入课程信息,确认按钮消息相应函数 private void button4_
23、click(object sender, eventargs e) courseno = textbox10.text; coursename = textbox11.text; coursetype = textbox12.text; openterm = textbox13.text; ccoursehours = textbox14.text; credit = textbox15.text; course cou = new course(); cou.insert(courseno, coursename, coursetype, openterm, ccoursehours, cr
24、edit); this.close(); /插入课程信息,重置按钮消息相应函数 private void button3_click(object sender, eventargs e) textbox10.text = ; textbox11.text = ; textbox12.text = ; textbox13.text = ; textbox14.text = ; textbox15.text = ; /插入成绩信息,确认按钮消息相应函数 private void button6_click(object sender, eventargs e) courseno = textbo
25、x16.text; studnetno = textbox17.text; score = textbox18.text; score sco = new score(); sco.insert(studnetno, courseno, score); this.close(); /插入成绩信息,取消按钮消息相应函数 private void button5_click(object sender, eventargs e) textbox16.text = ; textbox17.text = ; textbox18.text = ; 1.2信息删除模块namespace studentma
26、nagersys public partial class deleteform : form public string delstudentno = ; public string delclassno = ; public string delcourseno = ; public string delscoreid = ; public deleteform() initializecomponent(); /显示所有相应表格的数据 public void showalldata(string type) dataset set; if (type = 学生) student stu
27、= new student(); set = stu.selectall(); datagridview1.datasource = set; datagridview1.datamember = infom; else if (type = 班级) classinfo cla = new classinfo(); set = cla.selectall(); datagridview2.datasource = set; datagridview2.datamember = infom; else if (type = 课程) course cou = new course(); set =
28、 cou.selectall(); datagridview3.datasource = set; datagridview3.datamember = infom; else if (type = 成绩) score sco = new score(); set = sco.selectall(); datagridview4.datasource = set; datagridview4.datamember = infom; private void tabcontrol1_selected(object sender, tabcontroleventargs e) if (e.tabp
29、age = tabpage1) showalldata(学生); else if (e.tabpage = tabpage2) showalldata(班级); else if (e.tabpage = tabpage3) showalldata(课程); else if (e.tabpage = tabpage4) showalldata(成绩); /删除学生信息 private void button1_delstu_click(object sender, eventargs e) if (messagebox.show(this, 要删除所选记录吗?, 请确认, messageboxb
30、uttons.yesno, messageboxicon.question, messageboxdefaultbutton.button1, messageboxoptions.rightalign) = dialogresult.no) return; foreach (control ctrl in this.controls)/通过个一循环得到信息 string ctrlname = ctrl.name.trim(); if (ctrlname.startswith(pid)/查询信息根据的主键 ctrl.enabled = false; delstudentno = datagrid
31、view1.rowsdatagridview1.currentrow.index.cells0.value.tostring(); student stu = new student(); stu.delete(delstudentno); /删除成绩信息 private void button1_delsco_click(object sender, eventargs e) if (messagebox.show(this, 要删除所选记录吗?, 请确认, messageboxbuttons.yesno, messageboxicon.question, messageboxdefault
32、button.button1, messageboxoptions.rightalign) = dialogresult.no) return; if (delstudentno != & delclassno != ) score sco = new score(); sco.delete(delstudentno, delclassno); /删除课程信息 private void button1_delcou_click(object sender, eventargs e) if (messagebox.show(this, 要删除所选记录吗?, 请确认, messageboxbutt
33、ons.yesno, messageboxicon.question, messageboxdefaultbutton.button1, messageboxoptions.rightalign) = dialogresult.no) return; foreach (control ctrl in this.controls)/通过个一循环得到信息 string ctrlname = ctrl.name.trim(); if (ctrlname.startswith(pid)/查询信息根据的主键 ctrl.enabled = false; delcourseno = datagridview
34、3.rowsdatagridview3.currentrow.index.cells0.value.tostring(); course cou = new course(); cou.delete(delcourseno); /删除班级信息 private void button1_delcla_click(object sender, eventargs e) if (messagebox.show(this, 要删除所选记录吗?, 请确认, messageboxbuttons.yesno, messageboxicon.question, messageboxdefaultbutton.
35、button1, messageboxoptions.rightalign) = dialogresult.no) return; foreach (control ctrl in this.controls)/通过个一循环得到信息 string ctrlname = ctrl.name.trim(); if (ctrlname.startswith(pid)/查询信息根据的主键 ctrl.enabled = false; delclassno= datagridview2.rowsdatagridview2.currentrow.index.cells0.value.tostring();
36、classinfo cla = new classinfo(); cla.delete(delclassno); private void deleteform_load(object sender, eventargs e) showalldata(学生); private void datagridview4_cellvalidated(object sender, datagridviewcelleventargs e) delstudentno = datagridview4.rowse.rowindex.cells0.value.tostring(); delclassno = da
37、tagridview4.rowse.rowindex.cells1.value.tostring(); 1.3信息修改模块namespace studentmanagersys public partial class modifyform : form /修改学生信息用到的数据 public string modifystudnetno; public string modifystudnetname; public string modifysex; public string modifyative; public string modifyaddress; public string
38、modifybirth; /修改班级信息用到的数据 public string modifyclassno; public string modifydepart; public string modifyspecical; public string modifystudyears; public string modifyentertime; /修改课程信息用到的数据 public string modifycourseno; public string modifycoursename; public string modifycoursetype; public string modi
39、fyopenterm; public string modifyccoursehours; public string modifycredit; /修改成绩信息需要的数据 public string modifyscore; public modifyform() initializecomponent(); /显示所有相应表格的数据s public void showalldata(string type) dataset set; if (type = 学生) student stu = new student(); set = stu.selectall(); datagridview1.datasource = set; datagridview1.datamember = infom; else if (type = 班级) classinfo cla = new classinfo();
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 气胸的教学查房
- 保洁投标书范本
- 《汽车维修理论》课件
- 《公共关系的职能》课件
- 小学三年级数学两位数乘两位数笔算综合监控模拟题大全附答案
- 想象微电影分库周欣然
- 福建省建瓯市芝华中学2020-2021学年高一下学期第一阶段考试化学试题
- 一季度安全生产工作总结
- 中班社会活动红旗飘飘
- 微量输液泵什么是微量输液泵是电子输液控制装置能将药液精确
- (完整)交管12123学法减分考试题库及参考答案(通用版)
- 中药药剂学-散剂培训课件
- 中药方剂基本知识课件
- 城市轨道交通通信信号系统课件
- 大班综合《要是你给老鼠玩手机》课件
- 危大工程监理细则
- 线性代数试题及答案-线性代数试题
- x中国公司渠道连锁管理体系框架设计方案简介课件
- 博士个人陈述范文3篇推荐5篇
- 我是电脑小画家-综合实践活动课件
- 煤矿职业危害事故应急处置方案
评论
0/150
提交评论