《数据库概论》课程设计实验报告书_第1页
《数据库概论》课程设计实验报告书_第2页
《数据库概论》课程设计实验报告书_第3页
《数据库概论》课程设计实验报告书_第4页
《数据库概论》课程设计实验报告书_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

数据库系统概论课程设计实验报告书安徽工业大学计算机学院姓 名 赵后伟专 业 信息与计算科学班 级 信112班学 号 指导教师 申元霞分 数2011年 12 月19日数据库系统概论课程设计实验报告书 安徽工业大学计算机学院摘 要摘要内容: 学生成绩管理系统主要提供成绩查询,方便管理的网上的信息查阅平台,学生可以通过该系统查阅与自己相关信息,查看留言、提交留言。教师可以通过成绩管理系统查阅学生成绩信息,教师信息,查看教师留言、学生留言、提交留言、留言的管理等相关操作。系统管理员可以实现以上的所有功能,还有对学生的添加、删除、修改、教师的添加、删除、修改,数据库的备份、数据库的还原等相关操作。开发一个学生成绩管理系统,采用计算机对学生成绩进行管理,进一步提高了办学效益和现代化水平。为教师和学生提高工作效率,实现学生成绩信息管理工作流程的系统化,规范化和自动化。在今天信息时代传统的管理方法必然会被计算机为基础的信息管理系统所代替,一个高效的学生成绩管理系统可以存储历届的学生成绩档案,不需要大量的人力,只需要几名专门录入员即可操作系统,节省大量人力,可以迅速查到所需信息、高效、安全、学生在能方便的查看自己的成绩。关键词: 学生成绩管理系统, 数据库, 查阅, 操作。目录1 绪 论11.1 概述11.1.1 问题的提出11.1.2 本课题的意义11.2 开发环境与工具介绍11.2.1 ADO.NET简介11.2.2 xxx研究状况12 系统需求分析与设计22.1 用户需求分析22.1.1 用户需求22.1.2 系统功能需求22.1.3 系统性能需求22.1.4 数据分析22.2 功能模块图及分模块功能描述22.2.1 系统的功能模块图22.2.2 系统功能模块简介22.3 数据库设计22.3.1 系统E-R图22.3.2 数据库逻辑结构设计23 系统实施33.1 建立数据库33.2 数据库连接33.3 主要模块实施33.3.1 登录模块的开发33.3.2 xxxxx33.4 系统测试33.4.1 软件测试的对象33.4.2 软件测试的结果34 系统说明44.1 开发环境44.2 系统安装、配置与发布应用程序的步骤4总 结5参考文献6附录:部分源代码71 绪 论1.1 概述1.1.1 问题的提出 高效率的完成学生成绩的管理,开发一个具有使用意义的学生成绩管理系统。 1.1.2 本课题的意义 通过对学校日常教学管理中的课程、选课、学生、教师、成绩等相关内容进行分析,完成具有学生管理、成绩管理、课程管理等相关功能的小型数据库管理应用系统。 1.2 开发环境与工具介绍 本系统采用MicrosoftVisualC+6.0作为开发工具,C+为开发语言,采用Oracle9i版本数据库管理系统建立数据库,先在Oracle中设计并制作各部分需要调用的数据库,并进行初始数据的输入,再进行界面的设计和事件代码的编写,在指导老师的帮助下,已经基本上成功地实现了设计要求。其中数据库设计和程序设计是系统的核心部分。通过对数据库的概念设计、逻辑设计、物理设计和系统的模块设计,使得系统界面简洁,功能明确,方便了工作人员的操作。 1.2.1 ODBC简介 ODBC(OpenDatabaseConnectivity)是开放数据库互连的简称,是一种使用SQL的应用程序接口(API),是微软公司开放服务结构(WOSA,WindowsOpenServicesArchitecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口)。这些API利用SQL来完成其大部分任务。ODBC本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给ODBC。一个完整的ODBC由下列几个部件组成:应用程序、ODBC管理器、驱动程序管理器、ODBCAPI、ODBC驱动程序、数据源。1.2.2 学生成绩管理系统研究状况 学生成绩管理是各大学的主要日常管理工作之一,涉及到校、系、师、生的诸多方面,随着教学体制的不断改革,尤其是学分制、选课制的展开和深入,学生成绩日常管理工作及保存管理日趋繁重、复杂。迫切需要研制开发一款功能强大,操作简单,具有人性化的学生成绩管理系统。在国外高校,与国内不同,他们一般具有较大规模的稳定的技术队伍来提供服务与技术支持。而国内高校信息化建设相对起步较晚。在数字校园理论逐步应用的过程中,各高校一方面不断投资购建各种硬件、系统软件和网络,另一方面也不断开发实施了各类教学、科研、办公管理等应用系统,形成了一定规模的信息化建设体系。但是,由于整体信息化程度相对落后,经费短缺,理论体系不健全等原因,国内高校教务管理系统在机构设置、服务范围、服务质量及人员要求上与国外高校相比都有一定的差距。纵观目前国内研究现状,在安全性和信息更新化方面存在有一定的不足,各现有系统资料单独建立,共享性差;在以管理者为主体的方式中,信息取舍依赖管理者对于信息的认知与喜好,较不容易掌握用户真正的需求,也因此无法完全满足用户的需求。因此,教务管理软件应充分依托校园网,实现教务信息的集中管理、分散操作、信息共享,使传统的教务管理朝数字化、无纸化、智能化、综合化的方向发展,并为进一步实现完善的计算机教务管理系统和全校信息系统打下良好的基础。182 系统需求分析与设计2.1 用户需求分析2.1.1 用户需求学生成绩管理系统主要应用于教育系统,完成对日常的教学、教务、教师以及学生的计算机化的管理。开发学生成绩管理系统可使学院教职员工减轻工作压力,比较系统地对教务、教学上的各项服务和信息进行管理,同时,可以减少劳动力的使用,加快查询速度、加强管理,以及国家各部门关于信息化的步伐,使各项管理更加规范化。目前,学校工作繁杂、资料重多。目前,管理信息系统已进入高校,但还未普及,而对于学生成绩管理来说,目前还没有一套完整的、统一的系统。因此,开发一套适和大众的、兼容性好的系统是很有必要的。2.1.2 系统功能需求“学生成绩管理系统”包括九个模块:输入学生资料,输出学生资料,学生姓名按顺序排列,添加学生资料,按姓名查找,删除该学生资料,查找并显示学生资料,按姓名查找,修改该学生资料,从文件中读入数据,储存学生资料并退出系统。这九个模块既相互联系又相互独立。本系统根据学生成绩管理的需要,而建立一个“学生成绩管理系统”,以方便对成绩的各项管理操作。本系统能对成绩进行输入和输出;能按姓名对学生进行排序,并显示学生资料、成绩等,不过得以系统输入学生资料、成绩为前提;能添加学生成绩资料;能根据学生的姓名来查询该学生的成绩资料,并修改或是删除该学生信息;能够从文件中读取学生信息,并且添加到系统中;能把对系统所进行的操作进行保存,以及时更新系统中的数据。2.1.3 系统性能需求学生成绩管理系统主要提供成绩查询,方便管理的网上的信息查阅平台,学生可以通过该系统查阅与自己相关信息,查看留言、提交留言。教师可以通过成绩管理系统查阅学生成绩信息,教师信息,查看教师留言、学生留言、提交留言、留言的管理等相关操作。系统管理员可以实现以上的所有功能,还有对学生的添加、删除、修改、教师的添加、删除、修改,数据库的备份、数据库的还原等相关操作。2.1.4 数据分析学生表:学号,姓名,性别,年龄,班级,电话,学院,登录初始密码;教师表:教师号,姓名,性别,年龄,职称,电话,所属学院,登录初始密码;课程表:课程号,课程名,课程类型,课时;学院信息表:学院名称,学院电话;教师授课表:教师号,课程号,上课教室,上课事件;学生选课表:学号,课程号,教师号,成绩;2.2 功能模块图及分模块功能描述查询课程成绩查询所有课程平均成绩查询选课信息修改密码管理员教师学生登录添加学生信息修改学生信息查询学生信息查询授课信息修改密码增删改查学生信息增删改查教师信息2.2.1 系统的功能模块图2.2.2 系统功能模块简介 该系统首先由学生,教师,管理员某一种身份登陆,再针对不同身份管理或查阅数据库中的相关数据。2.3 数据库设计2.3.1 系统E-R图教师号职称性别年龄姓名电话学院密码教师 属于选修学生学院拥有成绩教师号课程教师讲授学期教室m11nn增删改查课程信息mn学号班级性别年龄姓名电话学院密码学生 教室课程课程号课时课程名 学院名电话学院 2.3.2 数据库逻辑结构设计 学生表:学号,姓名,性别,年龄,班级,电话,学院,登录初始密码;Student(SNo,SName,SSex,SAge,SClass,SPhone,SDept,SCode);教师表:教师号,姓名,性别,年龄,职称,电话,所属学院,登录初始密码;Teacher(TNo,TName,TSex,TAge,TPosition,TPhone,TDept,TCode);课程表:课程号,课程名,课程类型,课时;Course(CNo,CName,CType,CTime);学院信息表:学院名称,学院电话;Dept(DName,DPhone);教师授课表:教师号,课程号,上课教室,上课事件;Teach(TNo,CNo,TRoom,TTime);学生选课表:学号,课程号,教师号,成绩;Score(SNo,CNo,TNo,Score);3 系统实施3.1 建立数据库 创建数据库表的SQL语句Student表Create table Student(SNo char(10),SName varchar2(10) not null,SSex varchar2(2) not null,SAge number(2),SClass varchar2(10) not null,SPhone varchar2(12),SDept varchar2(20) not null,SCode varchar2(20) not null,constraint student_pk PRIMARY KEY(SNo),constraint student_SSex CHECK(SSex in (男,女),constraint student_SAge CHECK(SAge=15 and SAge=23 and TAge=5 and CTime=0 and Score=100),constraint score_SNo_fk FOREIGN KEY(SNo) References Student(SNo) on delete cascade,constraint score_CNo_fk FOREIGN KEY(CNo) References Course(CNo) on delete cascade,constraint score_TNo_fk FOREIGN KEY(TNo) References Teacher(TNo) on delete cascade);Dept表Create table Dept(DName varchar2(20) PRIMARY KEY,DPhone varchar2(12);3.2 数据库连接 CDatabase db; /定义CDatabase对象,用来连接数据库操作CRecordset set(&db); /定义CRecordSet对象,用来操作数据库数据(增删改查)if(!db.OpenEx(DSN=StuScore;SERVER=FXC;UID=U74115;PWD=fxc123;,0) /连接数据库,参数一/是连接字符串MessageBox(数据库连接失败!,错误提示,MB_OK|MB_ICONERROR);return;set.Close(); /断开操作对象连接db.Close(); /断开数据库的连接3.3 主要模块实施3.3.1 登录模块的开发 见附加代码部分3.3.2学生成绩管理系统各界面 系统登录界面:学生登录功能:教师登录功能:管理员登录功能:3.4 系统测试3.4.1 软件测试的对象利用不同的登录权限对学生表、教师表、课程表、授课表和成绩表进行不同的增删改查操作。 3.4.2 软件测试的结果学生部分功能实现结果:教师部分功能实现结果:管理员部分功能实现结果:查询学生信息:添加学生信息:修改教师信息:修改后的内容删除教师信息:(下图中已经删除教师号为001的教师信息)4 系统说明4.1 开发环境本系统的是在Micorsoft Visual C+6.0平台下开发的,系统的后台数据库为Oracle9i数据库;因此在使用本系统前,应先安装Micorsoft Visual C+和Oracle 9i数据库,否则该系统无法运行。4.2 系统安装、配置与发布应用程序的步骤将系统的原文件直接复制到机器上后,在数据库管理系统上建立一个名为FXC的数据库,在创建用户U74115/fxc123,建立表空间并添加必要的数据,最后再在ODBC中配置数据源,将数据源命名为StuScore后,系统便可以运行。总 结通过这次的课程设计,使我了解了更多数据库原理与应用这门课程,对以前不太理解和熟悉的内容有更多的掌握,在我设计的学生成绩管理系统中,虽然一开始我对这个系统怎样设计完完全全没有概念。但是如果仔细的想一下,还是可以找到出发点的。首先要建立一个完整的管理系统,就必须明白这个系统所包含的基本内容、处理一些怎样的信息等。最主要的是画出他们的ER图,便可直观的看出他们关系。在设计的时候,有时候也会感到没有思路了,或许是只有一点点的头绪,可经过对图的分析和认真观察他们的关系后,便有了新的思路和闪光点。最后根据自己的整理资料将每一步都运用SQL语言执行出来,并且看以下是否符合结果要求。我想经过这次课程设计可以更好的将所学知识运用到实际中去。也让我加深了对数据库知识的认识和了解。在这次实践设计过程中,我懂得了如何将所学的理论知识运用到实际中去,使得所学的知识能够融会贯通。同时,在课程设计过程中,我懂得了许多知识,增加了我对数据库的兴趣,今后一定努力的学习,在实践中增加自己的学习乐趣,让自己更加充实。参考文献1 郑莉,董渊,何江周.C+程序设计M. 北京:清华大学出版社,2010.2 陈根才,孙建伶,林怀忠,周波.数据库课程设计M. 浙江:浙江大学出版社,20073 戴小平,王丽,帅兵,张润梅.数据库系统及应用M. 合肥:中国科学技术大学出版社,2010 附录:部分源代码登录模块的开发void CStudentScoreManageDlg:OnOK() / TODO: Add extra validation hereGetDlgItemText(IDC_EDIT_USERNAME,m_username);GetDlgItemText(IDC_EDIT_PASSWORD,m_password);int match_flag=0; /用户名匹配标志,0表示不匹配,即数据库中没有找到该用户名CString username; /接受数据库中的相关字段CString password;/连接数据库,查询用户名(SNo或TNo)和数据库表中的数据是否匹配CDatabase db;CRecordset set(&db);if(!db.OpenEx(DSN=StuScore;SERVER=FXC;UID=U74115;PWD=fxc123;,0)MessageBox(数据库连接失败!,错误提示,MB_OK|MB_ICONERROR);return;/根据选择的登录身份来查找用户,从而和输入的用户名进行匹配if(1=m_id)set.Open(AFX_DB_USE_DEFAULT_TYPE,select rtrim(sno),scode from STUDENT);else if(2=m_id)set.Open(AFX_DB_USE_DEFAULT_TYPE,select rtrim(tno),tcode from TEACHER);else if(3=m_id)elseMessageBox(请选择登录身份!,提示,MB_OK);return;if(1=m_id | 2=m_id)/set.MoveFirst();while(!set.IsEOF()set.GetFieldValue(short)0,username);if(m_username=username)set.GetFieldValue(short)1,password); match_flag=1; /是否匹配反映在标志变量match_flag上break;else set.MoveNext();if(0=match_flag & 3!=m_id) MessageBox(没有找到该用户!,MB_OK);return;/根据m_id登录不同界面if(1=m_id)if(m_password=password)/MessageBox(学生登录);CStudentDlg StuDlg;StuDlg.m_sno=m_username; /传递用户名和密码StuDlg.m_scode=m_password;StuDlg.DoModal();elseMessageBox(密码不正确!,提示,MB_OK);return;else if(2=m_id)if(m_password=password)/MessageBox(教师登录);CTeacherDlg TeaDlg;TeaDlg.m_tno=m_username;TeaDlg.m_tcode=m_password;TeaDlg.DoModal();elseMessageBox(密码不正确!,提示,MB_OK);return; else if(Manager=m_username)if(temp=m_password)/MessageBox(管理员登录);CManagerDlg ManagerDlg;ManagerDlg.DoModal();elseMessageBox(管理员名称或密码输入不正确!,提示,MB_OK);return;else MessageBox(该用户不存在或不是管理员!,提示,MB_OK);return; set.Close();db.Close();CDialog:OnOK();教师添加学生成绩模块的开发:void CTeacherDlg:OnAddSocre() /添加成绩/ TODO: Add your control notification handler code hereGetDlgItemText(IDC_EDIT_SNO,m_sno);GetDlgItemText(IDC_EDIT_CNO,m_cno);GetDlgItemText(IDC_EDIT_SCORE,m_score);/先判断课程号是否正确,即该教师是否教授该门课程CDatabase db;db.OpenEx(DSN=StuScore;Server=FXC;UID=U74115;PWD=fxc123;,0);CRecordset set(&db);CString ptno=m_tno;ptno+=;set.m_strFilter=tno=+ptno;/MessageBox(set.m_strFilter); /测试查询条件set.Open(AFX_DB_USE_DEFAULT_TYPE,select rtrim(cno) from teach); /选出教师号为m_tno的教师所教课程的课程号int match_flag=0; /课程号是否匹配标志CString cno; /用来访问结果集中的记录set.MoveFirst();while(!set.IsEOF()set.GetFieldValue(short)0,cno);if(cno=m_cno)match_flag=1;/MessageBox(该课程号满足要求,MB_OK);break;elseset.MoveNext();set.Close(); /关闭

温馨提示

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

评论

0/150

提交评论