




已阅读5页,还剩17页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
函数。Access教学管理数据库应用系统设计方案第一章 课题背景1.1数据库数据库管理系统(database management system)是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库,简称DBMS。它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。用户通过DBMS访问数据库中的数据,数据库管理员也通过DBMS进行数据库的维护工作。它可使多个应用程序和用户用不同的方法在同时或不同时刻去建立,修改和询问数据库。DBMS提供数据定义语言DDL(Data Definition Language)与数据操作语言DML(Data Manipulation Language),供用户定义数据库的模式结构与权限约束,实现对数据的追加、删除等操作。Microsoft Office Access是微软把数据库引擎的图形用户界面和软件开发工具结合在一起的一个数据库管理1.2 Access数据库简介Microsoft Office Access系统。它是微软OFFICE的一个成员, 在包括专业版和更高版本的office版本里面被单独出售。2012年12月4日,最新的微软Office Access 2013在微软Office 2013里发布,微软Office Access 2010 是前一个版本。MS ACCESS以它自己的格式将数据存储在基于Access Jet的数据库引擎里。它还可以直接导入或者链接数据(这些数据存储在其他应用程序和数据库)。软件开发人员和数据架构师可以使用Microsoft Access开发应用软件,“高级用户”可以使用它来构建软件应用程序。和其他办公应用程序一样,ACCESS支持Visual Basic宏语言,它是一个面向对象的编程语言,可以引用各种对象,包括DAO(数据访问对象),ActiveX数据对象,以及许多其他的ActiveX组件。可视对象用于显示表和报表,他们的方法和属性是在VBA编程环境下,VBA代码模块可以声明和调用Windows操作系统函数。Access是一款数据库应用的开发工具软件,其开发对象主要是Microsoft JET数据库和Microsoft SQL Server数据库。由于在Office 97及以前的版本中,Microsoft JET 3.51及以前版本的数据库引擎是随Access一起安装和发布的,JET数据库与Access就有了天生的血缘关系,并且Access对JET数据库做了很多地扩充,如,在Access的环境中,可以在查询中使用自己编写的VBA函数,Access的窗体、报表、宏和模块是作为一种特殊数据存储在JET数据库文件(.mdb)中,只有在Access环境中才能使用这些对象。随着,Microsoft Windows操作系统版本的不断升级和改良,在Windows XP以后版本中,Microsoft将JET数据库引擎集成在Windwos操作系统中作为系统组件的一部分一起发布(主要原因是Windows中还有很多组件需要使用JET引擎,活动目录等)。从此JET数据库引擎从Access中分离出来,而Access也就成为了一个专门的数据库应用开发工具。1.3教学管理系统高校的教学管理工作中,需要存储和管理大量数据。只有借助计算机对这些数据进行存储和管理,才能保证教学工作顺畅、有序地进行,才能提高教学管理的质量和效率,减少错误发生。为此设计开发“教学管理系统”这一Access数据库应用系统。在数据库应用系统开发分析阶段确立的总体目标的基础上,就可以进行数据库应用系统开发的逻辑模型或规划模型的设计。数据库应用系统开发设计的首要任务,就是对数据库应用系统在全局基础上进行全面的总体规划,就是要确立该系统的逻辑模型总体设计方案,具体确定数据库应用系统所具有的功能,指明各个系统功能模块所承担的任务,特别是要指明数据的输入、输出的要求等。 本数据库的设计主要基于以下实际需求做出设计:某大学是一所综合性大学,学校设有经济学院、艺术学院、信息工程学院、外语学院、会计学院等11个学院。学校现有教职工近1400人,学生18000多人。学校的主要教学管理工作有:制定全校本专科教学工作计划、各课程教学大纲、教材建设和各种教学文件;编制每学年(期)教学任务安排,包括教师排课、学生选课、教室安排等。随着信息量的增加、教学管理工作越来越烦杂,手工管理的弊端日益显露,为了提高教学管理的质量和工作效率,及时提高信息,实现教学管理的信息化,特开发“教学管理系统”。第二章 设计简介及设计方案论述2.1数据库概念设计2.1.1确定实体为了利用计算机完成上述复杂的教学管理任务,必须存储教师、班级、学生、课程、授课、成绩等大量信息,因此教学管理系统中的实体应该包括:班级、课程、学生,由于教师与课程没有联系,因此将教师设计为授课的一个复合属性。图2-1 功能模块图2.1.2确定实体的属性实体的属性用如图2-1所示属于教师姓名性别参加工作时间政治面貌学历职称系别联系电话婚否教师编号成绩授课授课时间学期学年授课地点学时班级人数班级名称入学时间专业培养层次班主任班级编号课程课程编号学分课程类别班级编号学生照片班级编号学号姓名性别出生日期政治面貌分数图 2-1 教学管理系统E-R图MNIPNN2.1.3确定实体的联系类型(1)每个班级可以开设多门课程,而每门课程可以在多个班级开设。班级与课程是多对多的联系。(2)每个班级可以有多名学生,而每个学生只能属于一个班级。班级与学生只能属于一个班级。班级与学生是一对多的联系。(3)每个学生可以选修多门课程,而没门课程可以由多名学生选修。学生与课程是多对多的联系。2.1.4转换为关系模式将E-R图中的实体和联系转换为关系模式。由于“授课”联系的教师属性是复合属性,因此将教师单独转换成一个关系模式。班级单独转换成一个关系模式。学生实体单独转换成一个关系模式,班级和学生之间的“属于”关系是一对多的联系,因此将班级的主键“班级编号”加入学生关系模式中。课程单独转换成一个关系模式。班级和课程之间的“授课”联系是多对多的联系,因此单独转换成一个关系模式,并且加入两端的键,作为“授课”关系的主键。学生和课程之间的“成绩”联系是单独的联系,因此单独转换成一个关系模式,并且加入两端的键,作为成绩关系的主键。2.2数据库的物理实现2.2.1建立表根据第三范式的建表原则,将系统所需要的数据划分到六个表中,分别是“班级”表、“成绩”表、“教师”表、“课程”表、“教授”表、和“学生”表。(1)“班级”表。班级表记载了班级的详细信息,如表2-1所示表2-1 “班级”表列名数据类型宽度小数不允许空主键外键班级编号文本20班级名称文本50入学时间文本50专业文本50培养层次文本50人数整数40班主任文本50(2)“成绩”表。“成绩”表记载了所有学生的成绩信息,如表2-2所示。表2-2 “成绩”表列名数据类型宽度小数不允许空主键外键学号文本20课程编号文本20分数整数40(3)“教师”表。“教师”表记载了教师的详细信息,如表2-3所示。表2-3 “教师”表列名数据类型宽度小数不允许空主键外键教师编号文本20姓名文本50性别文本2参加工作时间日期/时间83政治面貌文本50学历文本50职称文本50系别文本50联系电话文本50婚否是/否(4)“课程”表。“课程”表记载了左右课程的详细信息,如表2-4所示。表2-4 “课程”表列名数据类型宽度小数不允许空主键外键课程编号文本20课程名称文本50课程类别文本50学分整数40(5)“授课”表。“授课”表记载了每个班级每学期的授课信息,如表2-5所示。表2-5 “授课”表列名数据类型宽度小数不允许空主键外键课程编号文本20教师编号文本20班级编号文本20学年文本50 学期文本50学时文本50授课地点文本50授课时间文本50(6)“学生”表。“学生”表记载了每个学生的授课信息,如表2-6所示。表2-6 “学生”表列名数据类型宽度小数不允许空主键外键学号文本20姓名文本50 性别文本2出生日期日期/时间83政治面貌文本50班级编号文本20照片OLE 对象2.2.2建立表间关系图2-1 表间“关系”窗体“学生”表和“成绩”表按照“学号”字段建立一对多联系,“课程”表和“成绩”表按照“课程编号”建立一对多联系,“班级”表和“教授”表按照“班级编号”建立一对多联系,“课程”表和“授课”表按照“课程编号”建立一对多联系,“教师”表和“授课”表按照“教师编号”建立一对多联系,表间关系如图2-1所示。其中“班级”表和“学生”表按照“班级编号”字段建立一对多联系,如图2-2所示。图2-2 关系编辑表第三章“教学管理系统”的系统实现3.1 查询的设计与实现学生查询设计,通过运用“Like”语句实现查询,如下图3-1,3-2所示图3-1学生查询图3-查询参数查询结果如下图3-3所示图3-3 查询结果同时在系统中依次增加成绩查询、班级查询、开课情况查询、开课门数查询和学生成绩查询等查询操作。图3-4成绩查询3.2 报表设计与实现报表设计,通过设计实用的报表增强数据库的可用灵活性,这样用户可快速查询大量数据并且数据可通过打印到处。学生报表、成绩报表分别如下图3-4、图3-5所示图3-5 学生查询图3-6 学生成绩查询3.3 宏操作设计与实现Access系统提供了大量的宏操作,可以把各种宏操作依次定义在宏中,其中每个操作实现特定的功能。运行软件时,Access就会按照所定义的顺序依次执行各个宏操作,通过宏可以轻松实现许多在其他软件中必须大量编写程序代码才能实现的功能。这里我们通过宏操作增加系统菜单,在设计并保存数据录入、数据查询、报表打印和退出系统的宏组之后添加系统菜单宏,从而添加系统菜单。如下图3-6、图3-7所示。图3-6 系统菜单宏图3-7系统菜单3.4 窗体设计与实现窗体是Access数据库对象设计中最具灵活性的一种对象,是用户与Access应用程序之间的主要接口。利用窗体可以将数据库中的对象组织起来,形成一个完整、风格统一的数据库应用系统。窗体中包含了各种控件,通过这些控件可以打开报表或其他窗体、执行宏或者VBA编写的代码。通过窗体,用户可以轻松地完成数据的输入、编辑、显示和查询等多项事务。窗体本身并没有数据存储功能,窗体的数据源主要是表或查询。除此之外,窗体的信息来源还包括附加信息,如设计窗体时,为了美化窗体或显示提示信息,可以在窗体中添加一些说明性文字或图形元素。我们可以利用查询数据设计窗体,比如可以查询特定的表或者引用特定查询,这里在数据库设计过程中对各表(学生表、教师表、班级表和授课表)的查询数据显示采用此种窗体设计显示。学生窗体如下图3-8所示,其他窗体这里就不再一一列举。图3-8 学生窗体利用查询实现窗体,通过添加子窗体实现窗体设计,如图3-9所示。在成绩录入父窗体中通过设置查询来选择需要录入的课程名称,然后更新下面的班级、学期、学年和课程信息。子窗体与父窗体的数据交互部分通过SQL语句来实现,在转到代码生成器中时添加相应代码实现数据传递。代码详见附录1。 图3-9 成绩录入窗体利用查询结果进行再筛选,通过列表框显示数据,如图3-10所示。成绩浏览窗体中通过开课情况查询在成绩浏览窗口中选择要浏览的班级。然后通过代码设计器设计将班级信息应用到下面的列表框查询中,从而显示要查询的班级学生成绩。代码详见附录2。图3-10成绩浏览窗体退出系统按钮设计时需要弹出一个消息提示窗口,如图3-11所示。这里我们通过添加一个SQL代码实现此操作。如果点击是会直接退出数据库系统,若点击否会取消此操作。代码详见附录3。 图 3-11 消息提示窗口最后的主窗体设计如下图3-12所示。设计过程中需要通过按钮将各个主窗体与子窗体联系起来,这样便实现了数据库的灵活控制。点击各个按钮就会调用相应的窗口,这样教学管理数据库系统的开发设计基本完成了设计。图3-12 主窗体总 结数据库设计过程中难免会遇到很多问题,而这次同样我也是费了很大的周折才把这次数据库设计做的还算令人满意吧。在实际操作过程中我发现数据库内容越丰富越能体现数据库设计之初数据库规划的重要性,因为当数据当量堆积在一起的时候就会面临一些数据完整性的问题,如果设计不当还会产生数据冗余。还有包括对脏数据的处理、报表设计、宏的应用、窗体设计、用户权限控制等等这些最好在数据库设计之初都要有一份很好的规划,不然设计过程中就会面临很大的随意性,使数据库的设计趋于没有条理的状态,当然这并不是我们希望的。数据库的设计目标就是为真实地反应现实世界中的数据及其关系,减少有害数据冗余,提高共享程序,消除数据异常插入、异常删除,保存数据的独立性,可修改,可扩充,使访问数据库的时间最短、存储空间最小。在数据库设计过程中我参考了大量的关于access的书籍,虽然基本讲义相同但也各有差别,但这些书籍还都是在讲一些比较小型的数据库设计。设计过程中会涉及到许多报表以及查询的设计,这就需要我们切身的去考虑用户需求了,比如说用户需要查询哪些信息,哪些是必须信息哪些是附加信息;还有报表设计的一般格式怎样,是否符合实际需求;窗体设计过程中是否需要添加导航界面以及用宏的添加应用等等。所以说在设计一个数据库之前首先要深入的了解用户需求,做好总体设计之后再具体设计数据库系统。对给定的现实世界应用环境构造数据模型,为建立数据库及信息系统做好准备,使数据库能够更有效地存储数据,满足各种用户的应用需求数据库综合设计就这么愉快的结束了,但是我们的学习还没有结束。比如学习数据库与网页有关的开发设计,数据库远程访问等问题,我想这应该叫学无止境吧。致 谢首先应该是要感谢我在图书馆借的那么多参考书,你们给了我动力与灵感,让我在数据库开发过程中辛苦并快乐着。然后感谢赵彤洲、李辉老师在整个课程过程中的帮助与悉心指导,没有他们的帮助,我也不能这么顺利地完成了课程设计。感谢自己,学无止境的心我们都值得拥有,因为世界并不缺少美而是缺少发现美的眼睛。我们要拥有的就是发现数据库美的眼睛。参考文献1 绍丽萍,张后杨,王馨迪. Access数据库技术与应用案例汇编M. 北京: 清华大学出版社, 2011.2 绍丽萍. 信息系统开发实践实验教程M. 北京: 电子工业出版社. 2007.3 绍丽萍,王伟岭,朱红岩. Access数据库技术与应用M 北京: 清华大学出版社. 2007.4 米红娟,李海燕. Access2007数据库应用教程M. 北京: 科学出版社, 2012附录1Option Compare DatabasePrivate Sub Combo4_BeforeUpdate(Cancel As Integer)End SubPrivate Sub Combo4_Change() 生成学生的成绩 Dim rs As Recordset Set rs = Me.Form.Recordset Dim sCourseCode As String Dim sClassCode As String Dim sYear As String Dim sTerm As String sCourseCode = Combo4.Column(2) rs.Fields(课程编号) sClassCode = Combo4.Column(3) rs.Fields(班级编号) sYear = Combo4.Column(4) sTerm = Combo4.Column(5) lYear.Caption = 学年: + sYear lTerm.Caption = 学期: + sTerm lClass.Caption = 班级: + Combo4.Column(6) lCourse.Caption = 课程: + Combo4.Column(7) If sCourseCode = Or sClassCode = Then Exit Sub End If Dim sSQL As String sSQL = INSERT INTO 成绩(学号,课程编号) SELECT 学号, + sCourseCode + FROM 学生 WHERE 班级编号= + sClassCode + sSQL = sSQL + AND 学号 NOT IN(SELECT 学号 FROM 成绩 WHERE 课程编号= + sCourseCode + ) 屏蔽警告 DoCmd.SetWarnings False DoCmd.RunSQL sSQL 允许警告 DoCmd.SetWarnings True 过滤数据 成绩.Form.Filter = 班级编号= + Com
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新解读《GB-T 35094-2018镁铝合金轮毂夹具通 用技术规范》
- 项目成本面试题目及答案
- 新解读《GB-T 36007 - 2018锄草机器人通 用技术条件》
- 七下深圳期末数学试卷
- 南浦小学六年级数学试卷
- 宁夏历年小升初数学试卷
- 平泉市特岗小学数学试卷
- 高效资源化建筑垃圾利用技术路径
- 数智技术如何促进幼儿园教师课程领导力发展
- 黔南州2024数学试卷
- 因公出国人员行前培训
- 滴灌施肥技能培训课件
- 胶原蛋白培训课件
- 2025至2030中国科研服务行业发展趋势分析与未来投资战略咨询研究报告
- 肿瘤患者的临终关怀及护理
- 2025年6月浙江省高考地理试卷真题(含答案解析)
- GB/T 45785-2025压缩空气站能源绩效评价
- 产权车位转让协议书范本
- CCU护士进修出科汇报
- 解表药白芷讲课件
- T/CUWA 60054-2023饮用水纳滤阻垢剂性能试验方法
评论
0/150
提交评论