下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、洛阳理工学院课程设计报告课程名称数据库课程设计设计题目教务管理系统专业计算机科学与技术班级B120505学号姓名完成日期2015-1-4课程设计任务书设计题目:教务管理系统设计内容与要求:设计教务管理系统,类似于我校教务管理系统,有四类用户:教务员、学生、教师、管理员教务员可以输入学生、教师、班级、课程信息。一个班级只属于一个专业,一个学生只属于一个班级。教务员负责输入每个专业、每个班级需要学习哪些课程,指定课程的任课教师。教师可以查看学习该课程的学生名单。课程结束后,教师可以录入课程成绩。一个教师可以教授多个班的多门课程,每门课由多位老师讲授。课程分两类,必修课和选修课。系统要记录每个学生学
2、习各门必修课的成绩,还要记录学生选修了哪些选修课以及课程成绩。学生可以查看自己各门课程的成绩。学生还可以进行评教,给老师打分。管理员可以输入教室信息,并结合班级、课程、教室信息实现自动排课。要求:1 .完成本系统的需求分析,写出功能需求和数据需求描述;2 .完成数据库的概念结构设计、逻辑结构设计、物理结构设计;3 .完成本系统的部分功能模块的程序界面设计。指导教师:高春玲2014年12月28日课程设计评语成绩:指导教师:年月日目录一、概述21.1、 本设计的目的与意义21.2、 数据库开发工具和应用程序开发工具2二、需求分析22.1 功能需求22.2 数据需求2三、概念结构设计23.1、 E-
3、R模型设计23.2、 总体E-R图描述4四、逻辑结构设计44.1、 关系模型44.2、 关系模式的优化与说明4五、物理结构设计55.1 建立数据库55.2 表与表结构5六、应用程序设计66.1、 系统总体结构66.2、 系统界面与源代码76.2.1、 界面76.2.2、 功能描述96.2.3、 程序源代码9七、设计总结23八、体会与收获24九、参考文献24概述本系统后台数据库采用MicrosoftSQLServer数据库,该数据库系统在安全性、准确性和运行速度方面有绝对的优势,并且处理数据量大,效率高;前台采用Microsoft公司的VisualStudio2010作为主要开发工具,可与SQL
4、Server2008数据库无缝链接。二、需求分析2.1、 功能需求本系统的功能如下:1)学生信息查询:学生可以根据学号、姓名、专业进行查询.2)学生信息管理:主要是用于学生信息更新、插入、删除;3)学生成绩录入:用于学生成绩管理,录入学生成绩,也可以更新;2.2、 数据需求本系统需要的数据如下:学生:学号、姓名、性别、年龄教师:工号、姓名、性别、年龄班级:班号、班名、人数、课程:课程号、课程名、上课时间、上课地点专业:专业号、专业名三、概念结构设计3.1、 E-R模型设计(E-R图)学生和教师实体及其属性E-R图教师与课程E-R图性别班名班号名数号专业属于属于1一n学习号课程名Ka,上课地点年
5、龄学生班级部分实体的E-R图总体E-R图3.2、 总体E-R图描述学生与班级之间的联系是所属关系(一对多关系)班级与专业之间的联系是所属关系(一对多关系)班级与课程之间的联系是学习关系(多对多关系)学生选修一门选修课(一对多关系)学生评教老师所教课程(多对多关系)老师教授课程(多对多关系)四、逻辑结构设计4.1、 关系模型学生(也姓名、性别、年龄、班号、选修课程号、分数)教师(工上姓名、性别、年龄)班级(班号:班名、人数、专业名)课程(课程号、课程名)成绩(必修课程号、班号、学号、分数)评教(学号、工号、课程号、评分)教授(工号、课程号)课程表(课程号、工号、上课时间、上课地点)(实现排课功能
6、)用户(用户名、密码、用户类型)(存储登陆查询系统的人员信息)加粗表示外键、加下划线表示主码4.2、 关系模式的优化与说明例如:教授关系的依赖关系如下:(工号、课程号)一工号、课程号所以教授关系模式属于第三范式教师关系的依赖关系如下:工号一工号、姓名、性别、年龄因为没有非主属性对码的部分函数依赖,也没有非主属性对码的传递函数依赖所以教师关系模式属于第三范式五、物理结构设计5.1、 数据库的建立融系库名标如.所有若(6):'|77融品军文件任建科之徐文仲芫型WitrtdSMBl巨的加长踹役款若谷妻行数据增国为1nh不限利雷性E1的据库谀设髓善善理,日志襁用1期量为1成,增性的是.l;且上
7、期据埠课设5.2、 表与表结构刘君重就除取NullO3CnojcJhiar(UcnEuVfflrcfriar(20臼Cnumbnyirrt臼ClmjajcirvarrfiarCZO)臼班级(Class)表的结构号enojvardhar(io)Cnamevarehar<2O)回列名允许Null|直课程(Course表的结构SHOSnameSsex:另己口aSgiracie|d-iar(9)vardhar(NO)dhar(2)tinyinttunyintvarchart1O3学生(Student)表的结构列名数据类型允许Null值*3,Tnochar19,Tnamevarchar(20)Ts
8、exchar12>Tag«bnytnts11教师(Teacher)表的结构叩理用列名JxuehaoJgonghaoJkehacgrade数据类型charC9)varcharClO)tinyint允许Hull值评教(Judge)表的结构列名数据类型允许Null值叩Tnochar(9)鼠TenovarcharflO允详Null值教授(Teach)表的结构列名数据类型A殍IGkehaoIvarcharflOjU.占占占4占占占上口上口41口dhU.&U.占&占44444口41上1414char<9)tinyint它GbanhaocharfT5建GxuehaoGg
9、rade成绩(Grade)表的结构六、应用程序设计6.1、 系统总体结构1)主界面:登陆界面,通过选择用户类型,输入用户名密码,点击登录进入不同界面。2)子界面:不同用户类型的界面不相同,学生可以查询成绩,老师可以查看自己所教课程有哪些学习,教务员可以实现排课功能。他们都能够修改自己的登录密码6.2、 系统界面与源代码6.2.1、 界面即1昨时月刎日星期日"14-初蟀理篝一字期第I烟登陆界面学生界面老师界面6.2.2、 功能描述1)登录2)学生查询学习课程的成绩3)老师查询学习所教课程的学生名单4)修改登录密码5)查看用户基本信息6.2.3、 程序源代码usingSystem;usi
10、ngSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Windows.Forms;namespace教务管理系统publicstructUserInform/结构体存储用户输入的信息(publicstaticstringUserType;publicstaticstringUserName;publicstaticstringUserSecret;publicstaticL
11、oginFormlg;publicpartialclassLoginForm:Form登陆界面(publicLoginForm()(InitializeComponent();UserInform.lg=this;DataClasses1DataContextdb;privatevoidCancelbutton_Click(objectsender,EventArgse)(this.Close();privatevoidLoginbutton_Click(objectsender,EventArgse)(db=newDataClasses1DataContext();this.bindingS
12、ource1.DataSource=db.UserInfo;boolb=false;if(UtypecomboBox.SelectedIndex!=-1)UserInform.UserName=UnametextBox.Text;UserInform.UserSecret=UsecrettextBox.Text;UserInform.UserType=UtypecomboBox.SelectedItem.ToString();varss=fromsindb.UserInfowheres.Utype=UserInform.UserTypeselects;foreach(varxinss)(if(
13、x.Uname.ToLower()=UserInform.UserName.ToLower()&&x.Usecret=UserInform.UserSecret)(MessageBox.Show("欢迎您登陆!");this.Visible=false;b=true;switch(UserInform.UserType)(case"学生":StudentFormsf=newStudentForm();sf.Show();break;case"老师":TeacherFormtf=newTeacherForm();tf.S
14、how();break;case"管理员":AdminFormaf=newAdminForm();af.Show();break;case"教务员":JwFormjw=newJwForm();jw.Show();break;)if(!b)(MessageBox.Show("用户名不存在或密码错误");UsecrettextBox.Clear();UnametextBox.Focus();return;)else(MessageBox.Show("请选择用户类型");UnametextBox.Clear();Usec
15、rettextBox.Clear();UnametextBox.Focus();return;)publicpartialclassStudentForm:Form学生界面(publicStudentForm()(InitializeComponent();DataClassesIDataContextdb;privatevoidStudentForm_Load(objectsender,EventArgse)(db=newDataClasses1DataContext();SnotextBox.Text=UserInform.UserName;SnotextBox1.Text=UserInf
16、orm.UserName;varss=fromsindb.Studentwheres.Sno=UserInform.UserNameselects;foreach(varitminss)(SnametextBox.Text=itm.Sname;SagetextBox.Text=itm.Sage.ToString();SsextextBox.Text=itm.Ssex;privatevoidlabel4_Click(objectsender,EventArgse)(this.Close();UserInform.lg.Visible=true;privatevoidlabel3_Click(ob
17、jectsender,EventArgse)(panel2.Visible=true;privatevoidEnterbutton_Click(objectsender,EventArgse)db=newDataClasses1DataContext();if(textBoxl.Text="")(MessageBox.Show("请输入原密码");textBox1.Clear();textBox2.Clear();textBox3.Clear();textBox1.Focus();elseif(textBox1.Text=UserInform.UserS
18、ecret)(if(textBox2.Text=textBox3.Text)(varss=fromsindb.UserInfowheres.Uname=UserInform.UserName&&s.Utype=UserInform.UserTypeselects;varui=ss.FirstOrDefault();if(ui!=null)(ui.Usecret=textBox2.Text;db.SubmitChanges();MessageBox.Show("修改成功");textBox1.Clear();textBox2.Clear();textBox3.
19、Clear();panel2.Visible=false;else(MessageBox.Show("两次输入应相同");textBox3.Clear();textBox3.Focus();)elseMessageBox.Show("原密码输入错误,请重新输入");textBox1.Clear();textBox2.Clear();textBox3.Clear();textBox1.Focus();)privatevoidCancelbutton_Click(objectsender,EventArgse)textBox1.Clear();textBox
20、2.Clear();textBox3.Clear();panel2.Visible=false;)privatevoidStudentForm_FormClosing(objectsender,FormClosingEventArgse)db=newDataClasses1DataContext();this.bindingSource1.DataSource=db.UserInfo;trythis.bindingSource1.EndEdit();db.SubmitChanges();)catch(Exceptionex)MessageBox.Show(ex.Message,"失败
21、");)privatevoidGradebutton_Click(objectsender,EventArgse)db=newDataClasses1DataContext();if(CnametextBox.Text!="")varss=fromsindb.Coursewheres.Cname=CnametextBox.Textselects;varcs=ss.FirstOrDefault();if(cs!=null)vars1=froms2indb.Gradewheres2.Gkehao=cs.Cno&&s2.Gxuehao=UserInfor
22、m.UserNameselects2;foreach(varitemins1)GradelistBox.Items.Add(CnametextBox.Text+"的成绩为"+item.Ggrade.ToString();)elseGradelistBox.Items.Add("此课程不存在")GradelistBox.Items.Add("请重新输入");CnametextBox.Clear();CnametextBox.Focus();)privatevoidClearbutton_Click(objectsender,EventA
23、rgse)GradelistBox.Items.Clear();)privatevoidtabPage1_Click(objectsender,EventArgse)publicpartialclassTeacherForm:Form老师界面publicTeacherForm()InitializeComponent();DataClasses1DataContextdb;privatevoidEnterbutton_Click(objectsender,EventArgse)db=newDataClasses1DataContext();if(textBox1.Text="&quo
24、t;)MessageBox.Show("请输入原密码");textBox1.Clear();textBox2.Clear();textBox3.Clear();textBox1.Focus();elseif(textBox1.Text=UserInform.UserSecret)(if(textBox2.Text=textBox3.Text)(varss=fromsindb.UserInfowheres.Uname=UserInform.UserName&&s.Utype=UserInform.UserTypeselects;varui=ss.FirstOr
25、Default();if(ui!=null)(ui.Usecret=textBox2.Text;db.SubmitChanges();MessageBox.Show("修改成功");textBox1.Clear();textBox2.Clear();textBox3.Clear();panel2.Visible=false;elseMessageBox.Show("两次输入应相同");textBox3.Clear();textBox3.Focus();)else(MessageBox.Show("原密码输入错误,请重新输入");tex
26、tBox1.Clear();textBox2.Clear();textBox3.Clear();textBox1.Focus();)privatevoidlabel4_Click_1(objectsender,EventArgse)(this.Close();UserInform.lg.Visible=true;)privatevoidTeacherForm_Load(objectsender,EventArgse)(db=newDataClasses1DataContext();SnotextBox.Text=UserInform.UserName;SnotextBox1.Text=User
27、Inform.UserName;varss=fromsindb.Teacherwheres.Tno=UserInform.UserNameselects;foreach(varitminss)SnametextBox.Text=itm.Tname;SagetextBox.Text=itm.Tage.ToString();SsextextBox.Text=itm.Tsex;)privatevoidTeacherForm_FormClosing(objectsender,FormClosingEventArgse)(db=newDataClasses1DataContext();this.bind
28、ingSource1.DataSource=db.UserInfo;try(this.bindingSource1.EndEdit();db.SubmitChanges();)catch(Exceptionex)(MessageBox.Show(ex.Message,"失败");)privatevoidlabel3_Click(objectsender,EventArgse)(if(panel2.Visible=false)(panel2.Visible=true;)else(panel2.Visible=false;)privatevoidCancelbutton_Cli
29、ck(objectsender,EventArgse)(textBox1.Clear();textBox2.Clear();textBox3.Clear();panel2.Visible=false;)privatevoidlabel5_Click(objectsender,EventArgse)(db=newDataClasses1DataContext();varss=fromsindb.Teachwheres.Tno=UserInform.UserNameselects;if(ss!=null)(SelectTablest=newSelectTable();foreach(varitem
30、inss)(if(item.Tcno.StartsWith("X")(vars1=fromsindb.Studentwheres.Skehao=item.Tcnoselectnew课号=s.Skehao,学号=s.Sno,学生姓名=s.Sname,性另1J=s.Ssex,成绩=s.Sgrade;st.lb.Items.Add("课号t学号tt姓名t性别t成绩");foreach(varimins1)st.lb.Items.Add(im.课号+"t"+im.学号+"t"+im.学生姓名+"t"+i
31、m.性别+”t"+im.成绩);)else(varsi=fromsindb.Gradewheres.Gkehao=item.Tcnoselects;st.lb.Items.Add("课号t学号tt姓名t性别t成绩");foreach(varitminsi)(vars2=fromsindb.Studentwheres.Sno=itm.Gxuehaoselectnew课号=itm.Gkehao,学号=itm.Gxuehao,学生姓名=s.Sname,性另J=s.Ssex,成绩=itm.Ggrade;variem=s2.FirstOrDefault();st.lb.It
32、ems.Add(iem.课号+"t"+iem.学号+"t"+iem.学生姓名+"t"+iem.性另ij+"t"+iem.成绩);st.Show();elseMessageBox.Show("该老师今年没有教授任何课程");return;privatevoidlabel6_Click(objectsender,EventArgse)(db=newDataClasses1DataContext();varss=fromsindb.Teachwheres.Tno=UserInform.UserNameselects;if(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 企业员工心理健康调节方案
- 医疗收费自查整改方案报告
- 氧气疗法与氧气道护理
- 口腔激光治疗仪介绍
- 餐饮行业财务分析报告模板全集
- 财务共享中心建设方案及运作模式
- 污泥处理工艺方案设计及实施指南
- 市场调查问卷设计与分析报告
- 电商平台客户数据分析实战报告
- 学生学业成绩综合分析与评价报告
- 高空抛物监控方案 (一)
- 2025年山东省中考物理试卷九套附答案
- 2025至2030旅游行业产业运行态势及投资规划深度研究报告
- 2025年铁路货运站服务项目立项申请报告模板
- 医保基金监管条例课件
- 2025年兵器装备集团招聘考试面试经验与心得总结
- 2025年泌尿外科危重病例处理技能检测试卷答案及解析
- DBJT15-74-2021 预拌混凝土生产质量管理技术规程
- USP232-233标准文本及中英文对照
- 2025年上半年山西孝柳铁路有限责任公司校招笔试题带答案
- 晚期肝癌患者护理
评论
0/150
提交评论