数据库原理与技能课程设计设计报告

上传人:z**** 文档编号:88238468 上传时间:2022-05-10 格式:DOC 页数:19 大小:385.50KB
返回 下载 相关 举报
数据库原理与技能课程设计设计报告_第1页
第1页 / 共19页
数据库原理与技能课程设计设计报告_第2页
第2页 / 共19页
数据库原理与技能课程设计设计报告_第3页
第3页 / 共19页
亲,该文档总共19页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
数据库原理与技术课程设计设计报告姓名:杨延超学号:201201130405班级:计算机科学与技术01班课程设计题目:学籍管理系统1需求分析1.1系统目标:实现一个通用学籍管理系统,完成对学生学籍信息的增加、删除、修改、查询、显示全部学生学籍信息等功能。1.1系统功能需求:本系统只在学校内部使用,故无需登录。用户可直接进入到主界面,进行各种操作,诸如录入学生信息、删除已不在的学生的学籍信息、修改有错误信息的学生的学籍信息、查询所要找的学生的学籍信息以及查看所有学生的学籍信息。(1)功能划分:用户无需经过身份验证,直接进入到学籍管理系统的主界面。主界面为用户提供了6个功能,即增加记录、删除记录、修改记录、查询记录、显示全部记录和退出。(2)功能描述:增加记录:用户进入到主界面后,若想添加新的学生学籍信息,可点击增加记录按钮。则会跳出一增加记录的对话框,用户可在各对应的框内填写所要填写的信息。当然这些不能胡乱的填写,要根据日常情况来填写。删除记录:用户进入到主界面后,若想把那些已不在的学生删除掉,可点击删除记录按钮。则会跳出一删除记录对话框,用户填写所要删除学生的学号,点击确定。若该学生的学籍信息不在数据库中,则会出现提示信息“无此学生”。若在数据库中有该学生的学籍信息,则会显示另一提示信息“确定删除吗?”,点击确定,又会出现一提示信息“删除成功”。虽然有些繁琐,但能确保不误删学生的学籍信息。修改记录:用户进入到主界面后,倘若想修改那些由于各种情况所造成的错误信息时,可点击主界面上的修改记录按钮。点击后会跳出一修改记录的对话框,用户可以根据有错误信息的学生的学号,先进行查询,查询后会显示该学生的全部学籍信息,用于可将错误的信息纠正过来,然后点击修改。返回主界面可点击退出按钮。查询记录:用户进入到主界面后,如果想要查看某个学生的学籍信息,可点击查询记录按钮。则会跳出一查询记录的对话框,用户输入想要查询学生的学号就可以查看到该学生的全部学籍信息。全部记录:用户进入到主界面后,想要查看全部学生的学籍信息,可点击全部记录按钮。则会在主界面的下部显示全部学生的学籍信息。退出:用户进入到主界面后,进行了各种操作后,想要退出该学生学籍管理系统,可点击主界面上的退出按钮。点击后,用户就可以退出本系统。2数据库的概念设计2.1系统的概念模型:图2-2学生学籍信息的属性E/R图上面两张图是学生学籍管理系统的概念模型的E/R图,该系统所涉及的实体集有:学生学籍信息实体集:具体属性有学号、姓名、性别、政治面貌、出生年月、专业、系院、籍贯、家庭住址。用户实体集:具体属性有使用权限。用户可以对多个学生的学籍信息进行管理,所以用户与学生学籍信息之间的关系为1:N。3将概念模型转换为改性模型3.1将E-R模型转换为关系模式(1)学生学籍信息转换为关系:STUDENT(CODE,NAME,SEX,POLITICAL,NATIVE,BIRTH,DEPARMENT,MAJOR,ADDRESS)CODEE表示学号,NAME表示姓名,SEX表示性别,POLITICAL表示政治面貌,NATIVE表示籍贯,BIRTH表示出生年月,DEPARMENT表示院系,MAJOR表示专业,ADDRESS表示家庭地址。3.2数据库表结构设计:把关系模型转化为表结构:学生学籍信息表(student)所包含的学生学籍信息,定义如下:表1学生学籍信息表域名含义数据类型例子备注code学号nvarchar(10)1071301208主键name姓名nvarchar(30)陈云龙sex性别nvarchar(2)男political政治面貌Nvarchar(16)团员native籍贯Nvarchar(8)江苏birth出生年月Nvarchar(10)1989deparment院系Nvarchar(30)计算机工程major专业Nvarchar(30)科学与技术address家庭地址Nvarchar(100)启东3.3实现数据完整性通过各种约束,缺省,规则和触发器实现数据的完整性。由于学生学籍管理系统的重要性,和各个数据之间的复杂相关性,保证数据的完整性显得更为重要。不能让用户随意的删除,修改数据。(1)CHECK约束保证查询时只能输入学号。(2)PRIMARYKEY约束在表中定义了一个惟一标识每一列的主键,即code(学号)。(3)使用默认值和规则。(4)各种外键约束保证数据的完整性,不能随意删除。(5)主键约束保证实体的完整性。(6)创建规则保证学生的出生年月只能输入数字,不会输入错误数据。(7)创建触发器,保证在添加学生信息的时候,自动将该班级的必修课添加到选课表中。4应用程序设计4.1学生学籍管理系统的处理流程图:退出退出N图5-1学生学籍管理系统的处理流程图4.2总体结构和外部模块设计:学生学籍管理系统图4-2模块设计图学生学籍信息增加模块学生学籍籍曰信息删除模块学生学籍信息修改模块学生学籍籍曰信息全部显示模块学生学籍信息查询模块退出4.3主要功能的代码(1)增加记录voidCAddDlg:OnButton1()UpdateData(true);/把编辑框里的东西放到相关变量CAddm_set;m_set.Open();m_set.MoveFirst();doif(m_set.m_code=m_code)MessageBoxC学号已存在,请重新输入!,增加记录);m_set.Close();return;m_set.MoveNext();while(!m_set.lsEOF();m_set.AddNew();/m_set.m_code=m_code;m_set.m_name=m_name;m_set.m_sex=m_sex;m_set.m_political=m_political;m_set.m_native=m_native;m_set.m_borth=m_borth;m_set.m_department=m_department;m_set.m_major=m_major;m_set.m_address=m_address;m_set.Update();/更新m_set.Close();MessageBox(录入成功!,增加成功);voidCAddDlg:OnButton2()OnOK();(2)删除记录voidCDelDlg:OnButton1()UpdateData(true);CAdddat;dat.Open();dat.MoveFirst();doif(dat.m_code=m_code)if(MessageBox(确定删除吗?,学生信息管理,MB_YESNO)=IDNO)dat.Close();return;dat.Delete();MessageBox(删除成功!,学生信息管理);dat.Close();return;dat.MoveNext();while(!dat.lsEOF();MessageBox(无此学生,学生信息管理);(3) 修改记录voidCChangDlg:OnButton1()UpdateData(true);CAdddat;dat.Open();dat.MoveFirst();doif(dat.m_code=m_code)dat.Edit();dat.m_code=m_code;dat.m_name=m_name;dat.m_sex=m_sex;dat.m_political=m_political;dat.m_native=m_native;dat.m_borth=m_borth;dat.m_department=m_department;dat.m_major=m_major;dat.m_address=m_address;dat.Update();MessageBox(修改成功!,修改记录);dat.Close();return;dat.MoveNext();while(!dat.lsEOF();dat.Close();MessageBox(无此学生!,修改记录);(4) 查询记录voidCScanDlg:OnButton1()UpdateData(true);intflag=0;mist.DeleteAllltems();CStrings;CAddm_set;if(m_code=)MessageBoxC请输入要查的学号!,学生信息查询);return;m_set.Open();m_set.MoveFirst();intj=0;doif(m_set.m_code=m_code)flag=1;break;m_set.MoveNext();while(!m_set.lsEOF();if(flag=0)MessageBox(不存在该学号!,错误);elsemist.lnsertltem(0,m_set.m_code,0);m_list.SetltemText(0,1,m_set.m_name);m_list.SetltemText(0,2,m_set.m_sex);mist.SetltemText(0,3,m_set.m_political);mist.SetltemText(0,4,m_set.m_native);m_list.SetltemText(0,5,m_set.m_borth);m_list.SetltemText(0,6,m_set.m_department);mist.SetltemText(0,7,m_set.m_major);mist.SetltemText(0,8,m_set.m_address);m_set.Close();UpdateData(false);(5) 全部记录voidCMyDlg:OnAII()UpdateData(true);CAddm_set;/调用数据库m_set.Open();/打开数据库m_set.MoveFirst();intj=0;mist.DeleteAllltems();domist.lnsertltem(j,m_set.m_code,0);/mist.SetltemText(j,1,m_set.m_name);m_list.SetltemText(j,2,m_set.m_sex);mist.SetltemText(j,3,m_set.m_political);mist.SetltemText(j,4,m_set.m_native);mist.SetltemText(j,5,m_set.m_borth);mist.SetltemText(j,6,m_set.m_department);mist.SetltemText(j,7,m_set.m_major);mist.SetltemText(j,8,m_set.m_address);j+;m_set.MoveNext();while(!m_set.lsEOF();m_set.Close();UpdateData(false);(6) 退出voidCMyDlg:OnCancel()OnOK();5编程实现F面给出学生学籍管理系统的主要用户界面:5.1学生学籍管理系统的主界面修改记录修改记录学号1姓名性别政治面貌1藕協岀主*pr査询记录5-1学生学籍管理系统的主界面图5-1是学生学籍管理系统的主界面,用户可以在主界面上选择增加记录、删除记录、修改记录、查询记录、显示全部记录、退出6个操作。5.2学生学籍管理系统的增加记录界面家庭地址匚嗔定退出5-2学生学籍管理系统的增加记录界面5-2学生学籍管理系统的增加记录界面学号已存在,谙重新输入!学号已存在,谙重新输入!录入成功!确疋广堆-;U箱疋图5-3图5-3图5-4图5-2是学生学籍管理系统的增加记录界面,图5-2是学生学籍管理系统的增加记录界面,用户可以在这里面填写所要添加的学生学籍信息。填写好所有信息后,用户可点击确定按钮,就把该学生的学籍信息录入到数据库中。若该学生的信息以录入到数据库中,贝U出现如图5-3的画面。若还没录入到是数据库中,则出现如图5-4的画面。点击退出,则返回主界面。5.3学生学籍管理系统的删除记录界面5-5学生学籍管理系统的删除记录界面5-5学生学籍管理系统的删除记录界面图5-6图5-7图5-8图5-5学生学籍管理系统的删除记录界面,用户可以输入要删除学生学籍信息的学号,若该学生是存在的,则点击确定,会跳出一对话框,提示用户到底要不要删,具体如图5-6所示,点击确定,显示删除成功,如图5-7所以。若该学生是不存在的,则会跳出一提示信息,具体如图5-8所示。5.4学生学籍管理系统的修改记录界面刃&而瓠査询修改退出5-9学生学籍管理系统的修改记录界面图5-10图5-9是学生学籍管理系统的修改记录界面,用户若想修改有错误的学生学籍信息,可进入此界面。用户必须先输入该学生的学号,然后点击查询,就可以看到该学生的全部的学籍信息。用户若想修改,可修改编辑框中的信息,全部改好后,点击修改。若填写的格式,规范都符合要求,就能修改成功,出现如图5-10所示的提示信息。5.5学生学籍管理系统的查询记录界面5-11学生学籍管理系统的查询记录界面图5-12图5-11是学生学籍管理系统的查询记录界面,用户若想要查看某同学的学籍信息,可以进入到此界面中。输入想要查询学生的学号,点击确定,就可以查询了。若是该学号不存在,则出现如图5-12所示。若存在,就可以看到该学生的的全部学籍信息。5.6学生学籍管理系统的显示全部信息界面曙加记录曙加记录册陽记录修改记录直询记录全部记录退岀出生1071301201107130120210713012031(171301206107130120710713012061071301213苏苏苏苏茅券弗江江江江a江江计计计计计计计程程程程程程程-1-1ZIIII-11-H1-1工工工工工工工机机机机机M机算宜苴氢茸算算5-13学生学籍管理系统的显示全部信息界面图5-13是学生学籍管理系统的显示全部信息界面,也就是在主界面上。用户想要查看全部学生的学籍信息,可点击主界面上的全部记录按钮,则可以在主界面的下方显示出数据库全部学生的学籍信息。5.7学生学籍管理系统的退出界面此界面就是主界面,退出只是上面的一个功能按钮。用户进行各种操作后,若想退出学生学籍管理系统,可点击主界面上的退出按钮,就能推出本系统。总结通过一个星期的数据库课程设计实习,我从中受益匪浅,并且对数据库这一门课程有了更深一步的认识。在实习的过程中,我把这学期所学的理论知识和实践联系起来,在所要开发的程序中渐渐融会贯通。虽然我们对这些知识还运用得还不是很熟练,但是相信在现在和今后的学习中会得到更加深刻的掌握。在课程设计中,设计了一个学生学籍管理系统,对学生学籍信息进行管理。基本上包含了学籍管理所要求的信息,能够完成一定的数据管理功能。但是这是一个完全不能真正用与实际的系统,它没有登陆注册界面,一点都不安全。也没有完善的数据完整性的约束。具体说来就是不具有可靠的安全性。但总之在设计当中我学习到了许多东西,用到了很多的数据库的理论知识,增强了一定的实践能里。这学期也做过蛮多的实验,但那是有步骤的,可以照着做就可以了。然而,课程设计就给了我一个课题,什么都没有,都要自己去想,去查资料,去做。对自己的能力有很大的提高。特别是以前数据库中没搞清楚的弄懂了,不熟练的变得熟练了,让我对数据库的理论知识有了一个更加深的认识。在一个系统开发的过程中编码不是重要的,我感觉重要的是分析系统、建立起系统模型和对数据的处理。在分析一个系统前,分析人员必须要对将要开发的系统所涉及到的各方面知识有一个认识,然后将系统的模型建立起来。这是要考虑到很多数据的特性及其关联。总结这次课程设计给我感受最深的至少有四点:1. 进行软件开发这样的工作,要有恒心,要能静下新来做,而不能浮躁。2. 要遵循软件开发本身的规律和善于吸收已有的经验。3. 要善于同别人交流与合作,善于获取有用的各种资源。4. 要真真实实的多查资料,多问,多做。
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 活动策划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!