Access 2021数据库应用基础教程(微课版)课件 卫琳 第5-10章 模块与VBA -数据库应用系统开发实例_第1页
Access 2021数据库应用基础教程(微课版)课件 卫琳 第5-10章 模块与VBA -数据库应用系统开发实例_第2页
Access 2021数据库应用基础教程(微课版)课件 卫琳 第5-10章 模块与VBA -数据库应用系统开发实例_第3页
Access 2021数据库应用基础教程(微课版)课件 卫琳 第5-10章 模块与VBA -数据库应用系统开发实例_第4页
Access 2021数据库应用基础教程(微课版)课件 卫琳 第5-10章 模块与VBA -数据库应用系统开发实例_第5页
已阅读5页,还剩243页未读 继续免费阅读

下载本文档

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

文档简介

第5章模块与VBA教学目标通过本章的学习读者应该掌握基本的VBA编程环境,能够独立进行简单的VBA程序设计。教学重点掌握VBA程序设计基础掌握程序流程控制的知识掌握模块、函数和子程序的知识理解面向对象的程序设计的知识掌握VBA开发环境理解VBA代码的保护措施教学过程VBA程序设计基础程序流程控制模块、函数和子程序面向对象的程序设计VBA开发环境VBA代码的保护5.1模块的基本操作5.1.1什么是VBA5.1.2模块的分类5.1.3创建模块5.1.1什么是VBA

VB(VisualBasic)是一种面向对象的程序设计语言,Microsoft公司将其引入到了其他常用的应用程序中。在Office的成员Word、Excel、PowerPoint、Access和OutLook中,这种内置在应用程序中的VisualBasic版本称之为VBA。1.宏和VBA2.宏转换为VBA3.VBA常用术语5.1.2模块的分类1.标准模块2.类模块3.标准模块和类模块的区别(1)存储数据的方法不同。标准模块中公共变量的值改变后,后面的代码调用该变量时将得到改变后的值。(2)标准模块中的数据存在于程序的存活期中,将在程序的作用域内存在。(3)标准模块中的public变量在程序的任何地方都是可用的,类模块中的public变量只能在引用该类模块的实例对象时才能被访问。5.1.3创建模块1.创建模块【例5-1】创建一个简单的HelloWorld程序。(1)启动Access2021,打开School.accdb数据库。(2)切换到功能区的“创建”选项卡,单击“宏与代码”组中的“模块”命令,系统将默认创建一个新模块,并打开MicrosoftVisualBasicforApplications编辑器,如图5-2所示。如果想再创建一个模块,只需在图5-2所示的VBA编辑器中选择“插入”|“模块”命令,Access2021将自动新建一个模块定义窗口。(3)在VBA编辑器的代码窗口中OptionCompareDatabase代码的下方输入如下代码。SubHelloWorld()MsgBoxprompt:="HelloWorld,我是赵智暄,和我一起学习Access2021吧!"EndSub2.运行模块运行模块的方法很简单,只需在VBA编辑器中按F5键,或者单击工具栏中的“运行子过程/用户窗体”按钮,打开“宏”对话框,在“宏”对话框中选择要运行的过程,单击“运行”按钮即可。5.2VBA程序设计基础常量、变量和数组数据类型:

布尔型(Boolean)、日期型(Date)、字符串(String)、货币型(Currency)、字节型(Byte)、整数型(Integer)、长整型(Long)、单精数型(Single)、双精数型(Double)以及变体型(Variant)和用户自定义型。在VBA代码编程环境中通过“Dimas”语句来定义数据类型。5.2.1VBA编程环境1.VBE工具栏2.代码窗口3.对象浏览器4.工程资源管理器5.属性窗口6.立即窗口、本地窗口和监视窗口。5.2.2数据类型程序设计最强大的概念之一就是变量。变量是为特定值提供的一个临时存储位置,并且会为其提供相应的名称。声明变量时需要指定一种数据类型,所以在学习变量之前,首先需要了解一下VBA的数据类型。数据类型决定系统使用的数据格式。在VBA中,数据类型包括:布尔型(Boolean)、日期型(Date)、字符串(String)、货币型(Currency)、字节型(Byte)、整数型(Integer)、长整型(Long)、单精数型(Single)、双精数型(Double)以及变体型(Variant)和用户自定义型等。5.2.3常量、变量和数组1.标识符命名规则2.常量3.变量4.变量的作用域和生命周期5.数组5.2.4运算符和表达式1.算术运算符和算术表达式2.比较运算符和比较表达式3.字符串连接运算符和字符串表达式4.逻辑运算符和逻辑表达式5.对象运算符与对象表达式6.运算符的优先顺序5.2.5VBA常用语句1.语句的书写规则2.声明语句3.赋值语句4.注释语句5.2.6面向对象程序设计概述1.类和对象2.属性3.方法4.事件5.事件过程对象对象是为了管理数据和代码的方便而提出的。在VBA中,对象是封装数据和相应代码的客体,它是代码和数据的组合。对象具有属性、方法和事件。属性是一个对象的特征,它定义了对象的大小,颜色、位置等特征,可以通过修改对象的属性值来修改对象的特征。方法指的是对象能执行的动作,通过这个动作能实现相应的功能或改变对象的属性,如FindRecord”是对象DoCmd的一个方法,调用这个方法可以找到符合条件的记录。事件是一个对象可以探知的动作,如鼠标的单击或双击,控件的移动等,事件过程针对被触发的事件作出响应,执行相应的功能。属性和方法在代码、宏或表达式中,一般通过输入其标识符来引用相应已开启的对象或属性,可以通过以下几种方式引用对象及属性:

(1)引用已被打开的窗体或报表

(2)引用相应的子窗体和子报表

(3)引用控件或属性值

(4)引用窗体节、报表节或报表的组级别

(5)引用列表中的列

5.3VBA的流程控制结构

5.3.1顺序语句5.3.2分支结构If语句SelectCase语句5.3.3循环结构Do…Loop语句For…Next语句While…Wend语句5.3.4跳转语句GoTo语句5.3.5Exit语句5.4数组与过程

5.4.1过程与函数5.4.2过程调用5.4.3常用函数5.4.4程序调试5.4.5VBA程序中的错误处理5.4.6VBA代码的保护5.4.1过程与函数过程的表示方法为Sub。过程能在响应相应的事件并执行其中的代码,可以简化程序设计任务。过程的语法结构为:Sub过程名称()变量声名基本语句EndSub5.4.1过程与函数函数不仅能执行一定的命令,还能根据参数计算出对程序有用的数值并且可以在表达式中引用。函数的语法结构如下:

Function函数名称()As数据类型

变量声明

基本语句

函数名称=表达式?

EndFunctionVBA开发环境进入VBAVBA调试环境程序的调试进入VBA当我们选中一个需要编写代码的控件,并准备为其对某一事件的响应方法编写VBA代码时,就应该启动VBA的编成环境对VBA代码编辑操作。Access提供了多种方法启动VBA编程环境,包括如下方式:按Alt+F11组合键在数据库窗口中选择“工具”|“宏”|“VisualBasic编辑器”命令单击数据库窗口中的“模块”按钮,然后单击“新建”按钮,或双击要查看或编辑的模块VBA调试环境在MicrosoftAccess中调试VBA代码的工具是“VisualBasic编辑器”。VisualBasic编辑器的主要功能是建立和管理VBA项目。该软件的界面如下图所示。在打开的VisualBasic编辑器中,默认情况下只包含代码窗口。如果有特殊的需要,可以通过“视图”菜单打开项目资源管理器、属性窗口、本地窗口、立即窗口、监视窗口等窗口。这些工具为代码的设计和调试提供了方便。程序的调试逐步调试监视代码的运行5.4.6VBA代码的保护通过密码保护VisualBasic代码创建一个MDE文件通过密码保护VisualBasic代码可以通过对VBA设置密码防止其他非法用户查看或编辑数据库中的程序代码。方法如下:(1)首先,进入“VisualBasic编辑器”环境。打开需要保护的VBA代码的MicrosoftAccess项目(.adp)文件或MicrosoftAccess数据库(.mdb)文件。在数据库窗口中,选择“工具”|“宏”|“VisualBasic编辑器”命令,进入VBA编辑环境。(2)在“VisualBasic编辑器”中,选择“工具”|“<Access数据库或Access项目名>属性”命令。(3)在“保护”选项卡中,选中“查看时锁定项目”复选框。如果设置了密码,但没有选中“查看时锁定项目”,则任何人都可以查看和编辑代码,但“项目属性”对话框是被保护的。(4)在“密码”框中输入密码,在“确认密码”框中,再次输入密码以进行确认,然后单击“确定”按钮即可。创建一个MDE文件生成MDE文件的步骤如下:

(1)关闭MicrosoftAccess数据库。如果在多用户环境中工作,确认其他所有用户已关闭Access数据库。

(2)选择“工具”|“数据库实用工具”|“生成MDE文件”命令,打开“保存数据库为MDE”对话框。

(3)在“保存数据库为MDE”对话框中,指定要保存为MDE文件的Access数据库,然后单击“生成”按钮。

(4)在“将MDE保存为”对话框中,为Access数据库指定名称、驱动器和文件夹后,单击“保存”按钮即可。

5.5本章小结模块是Access的第六大对象。本章主要介绍了模块和VBA的相关知识。首先介绍的是模块与VBA的基本概念和分类,以及如何创建模块;然后介绍VBA程序设计的基础知识,包括VBA编程环境、数据类型、常量与变量的定义、运算符和表达式、以及面向对象的程序设计思想;接下来继续深入学习,介绍了VBA的流程控制语句,包括顺序语句、选择语句、循环语句和跳转语句;最后介绍了VBA高级程序设计,包括过程和函数的调用、程序调试与错误处理,以及VBA代码的保护。5.6思考和练习1.什么是VBA?2.模块的类型有哪些?与VBA有何关联?3.VBA中,主要的流程控制语句有哪些?4.什么是过程?什么是函数?过程和函数有什么不同?5.以下声明语句声明的变量var1是什么类型的?()DimvarAsInteger,var1,var2AsStringA.

Integer B.

String C.未知 D.Variant6.以下运算符不是逻辑运算符的是()。A.

And B.

&

C.

Or

D.

NotThankYou!第6章窗体主要内容6.4创建主/子窗体

6.3设计窗体6.2创建窗体

6.1窗体概述学习目标

窗体是人机交互的界面。通过窗体可以将数据库对象组织起来形成一个应用系统,方便用户输入、编辑、查询、排序、筛选和显示数据。本章主要介绍创建各种窗体的方法、窗体的属性设置、窗体控件应用,以及修饰窗体等操作。本章重点

创建窗体修饰窗体添加窗体控件使用切换面板6.1窗体的概述窗体主要用于输入和显示数据的数据库对象。也可以将窗体用作切换面板来打开数据库中的其他窗体和报表,或者用作自定义对话框来接收用户的输入及根据输入执行操作。多数窗体都与数据库中的一个或多个表和查询绑定。窗体的记录源来源于数据表和查询中的某个指定的字段或所有字段。在窗体中,可以显示标题、日期、页码、图形和文本等元素,还可以显示来自报表中表达式的计算结果。6.1窗体概述

窗体主要用于创建用户界面,它本身没有存储数据的功能,但是窗体中包含各种控件,通过这些控件可以打开报表或其他窗体、执行宏或VBA编写的代码程序、可以方便地编辑和显示数据。窗体都是建立在表或查询基础上的。窗体的功能窗体的类型

窗体的构成

窗体的设计视图中主要包含3类对象:节、窗体和控件。窗体由5个部分构成,每一部分称为一个节。6.1.1窗体的功能

利用窗体,可以将Access2021数据库组织起来,构成一个完整的应用系统。总的来说,窗体具有以下几种功能:数据的显示与编辑数据输入应用程序流程控制通过窗体的控件,可以在窗体及其数据源对象之间创建链接信息显示和数据打印1.按功能分类根据功能的不同,可以将窗体分成:数据操作窗体:用来对表或者查询包含的数据进行显示、浏览以及修改等操作的窗体;控制窗体:用来控制程序运行的窗体,它一般使用很多空间来完成用户的操作请求;信息显示窗体:一般可作为控制窗体的调用对象,它以数值或者图表的形式显示信息;信息交互窗体:用来给用户提示信息或者警告信息的窗体,一般是在系统设计过程中预先编写好的。6.1.2窗体的类型6.1.2窗体的类型1.按数据源个数分类窗体的来源可以是数据表,其个数也没有限定。因此根据数据源的个数,窗体可以分为基于单表的窗体以及基于多表的窗体。2.按显示方式分类窗体可以实现表对象、查询对象中数据的浏览、显示功能。根据显示数据记录的个数,可以分为简单窗体和多个项目窗体。简单窗体中每一次只能显示一条记录的有关数据,而多个项目窗体可以根据需要将全部的记录显示出来。3.按选项卡个数分类按照选项卡的个数,可以将窗体分为单选项卡窗体和多选项卡窗体。6.2创建窗体

在Access中,提供了4种创建窗体的方法:自动创建窗体、使用窗体向导创建窗体、使用空白窗体工具创建窗体和使用设计视图创建窗体。自动创建窗体和使用窗体向导创建窗体都是根据系统的引导完成创建窗体的过程,使用设计视图创建窗体则根据用户的需要自行设计窗体,这需要用户掌握面向对象程序设计的相关知识。本节将全面地介绍使用各种方法创建各种类型的窗体。

自动创建窗体使用窗体向导创建

使用空白窗体工具创建使用设计视图创建6.2.1自动创建窗体

Access2021提供了很多智能化的自动创建窗体的方法,在【创建】选项卡的【窗体】组中,单击窗体工具按钮,即可创建窗体。6.2.2使用窗体向导

使用窗体向导也可以创建窗体,按照向导提示进行选择,最后完成窗体的初步创建。如果用户需要调整窗体对象的控件布局,只需在设计视图中进行修改。

6.2.3使用空白窗体工具

如果窗体构建工具或窗体向导不符合创建窗体的需要,可以使用空白窗体工具构建窗体。当计划在窗体上放置很少几个字段时,这是一种快捷的窗体构建方式。6.2.4使用设计视图

很多情况下,使用向导或者其他方法创建的窗体只能满足一般的需要,不能满足创建复杂窗体的需要。如果要设计灵活复杂的窗体,需要使用设计视图创建窗体,或者使用向导及其他方法创建窗体,完成后在窗体设计视图中进行修改。6.3设计窗体6.3.1窗体的设计视图6.3.2“窗体设计工具”功能区选项卡6.3.3“属性表”窗口6.3.4使用控件6.3.5编辑控件6.3.6创建弹出式窗体6.3.1窗体的设计视图主体:主要用于显示数据记录,可以在屏幕或页面上显示一条记录,也可以根据屏幕和页面的大小显示多条记录。窗体页眉:窗体页眉中显示的信息对每条记录而言都是一样的,如显示窗体的标题。在“窗体视图”中,窗体页眉出现在屏幕的顶部,而在打印窗体时,窗体页面出现在第一页的顶部。页面页眉:在每张要打印页的顶部,主要显示标题或列标题等信息,页面页眉只出现在打印的窗体中。页面页脚:在每张打印页的底部显示日期或页面等信息。页面页脚只出现在打印的窗体中。窗体页脚:其显示的信息对每条记录都是一样的,其中包括命令按钮或窗体的使用说明等。6.3.1窗体设计视图

很多情况下,使用向导或者其他方法创建的窗体只能满足一般的需要,不能满足创建复杂窗体的需要。如果要设计灵活复杂的窗体,需要使用设计视图创建窗体,或者使用向导及其他方法创建窗体,完成后在窗体设计视图中进行修改。6.3.2“窗体设计工具”功能区选项卡1.“设计”选项卡2.

“排列”选项卡3.

“格式”选项卡6.3.3“属性表”窗口6.3.3“属性表”窗口“属性表”窗口包含5个选项卡,分别是“格式”、“数据”、“事件”、“其他”和“全部”选项卡。格式:包含了窗体或控件的外观属性,这些属性确定标签或值的显示形式,其中包括字体、大小、颜色、特殊效果、边框以及滚动条等。数据:包含了与数据源、数据操作相关的属性,这些属性影响值的显示形式及其所绑定的数据源,其中包括控件来源、输入掩码、验证、默认值以及其他数据类型属性等。事件:事件属性是命名事件,包含了窗体或当前控件能够响应的事件,例如单击鼠标按钮、添加记录、按某个键(可以为其定义响应,通过宏或VBA过程调用的形式)等。其他:其他属性显示控件的其他特征,例如控件的名称或显示在状态栏中的说明。全部:可以查看某个控件的所有属性。6.3.4使用窗体控件

如果要创建满个性化的窗体,需要在设计视图中自行添加使用窗体控件。控件是构成窗体的基本元素,在窗体中对数据的操作都是通过控件实现。使用控件对窗体布局进行设计,体现出窗体对象操作灵活、界面美观等特点,更好地实现人机交互的功能。控件的概述窗体和控件的属性使用组合框控件使用列表框控件使用复选框控件使用选项卡控件设置控件格式设置窗体和节1控件的概述

控件分为绑定型、未绑定型和计算型3种类型。在【控件】选项组中可以添加控件并设置其属性。2窗体和控件的属性

窗体及窗体中每一个控件都具有各自的属性,这些属性决定了窗体和控件的外观、包含的数据及对外部事件的响应。设计窗体需要对窗体和控件的属性进行相应的设置。3使用组合框控件

窗体提供组合框控件,使用这些控件可以减少重复输入数据带来的繁琐。下面将以实例来介绍创建组合框来输入数据的方法。4使用列表框控件

列表框与组合框的不同之处在于,用户除了可以在组合框控件的列表中选择数据外,还可以输入其他数据。列表框一般用于页面空间比较大,并需要对可选择的内容一目了然的场合。下面将以实例来介绍使用列表框控件。5使用复选框控件

当数据表中某字段的值为逻辑值时,则在创建窗体的过程中,Access自动将其设置为复选框控件。6使用选项卡控件

选项卡控件也是最重要的选项控件之一,它可以在有限的屏幕上摆放更多的可视化元素,例如文本、命令、图像等。如果要查看选项卡上的某些元素,只须单击相应的选项卡切换到相应的选项卡界面即可。7设置控件格式

创建完控件以后,需要经常编辑控件。例如对齐控件、调整控件的间距、设置控件背景色以及设置控件属性等。6.3.5编辑控件1.选择控件2.取消选择控件3.移动控件4.调整控件的大小5.对齐控件6.组合控件7.更改控件的类型8.设置控件属性6.3.6创建弹出式窗体

弹出式窗体包括无模式窗体和模式窗体两种。打开无模式弹出式窗体时,可以访问其他对象和菜单命令。无模式弹出窗体停留在其他窗口的上面,但可以在不关闭弹出式窗体的情况下将焦点移到另一个窗口中。

模式弹出式窗体又称为“自定义对话框”。在除“设计视图”之外的视图中打开模式弹出式窗体时,除非关闭窗体,否则无法访问其他任何对象。6.4创建主/子窗体6.4.1利用向导创建主/子窗体6.4.2利用子窗体控件创建主/子窗体6.4.3快速创建主/子窗体1使用主/子窗体

在Access中,有时需要在一个窗体中显示另一个窗体中的数据。窗体中的窗体称为子窗体,包含子窗体的窗体称为主窗体。同时创建主窗体和子窗体创建子窗体并添加到已有窗体2同时创建主窗体和子窗体

本节将“产品信息表”和“公司订单表”为数据源,同时创建“产品记录”主窗体和“订单记录”子窗体,来介绍使用窗体向导同时创建主窗体和子窗体的操作方法。3创建子窗体并添加到已有窗体

除了上面介绍的同时创建主窗体和子窗体的方法外,还可以创建子窗体并将其添加到已有的窗体中。

实例演练

本章的实例演练部分为添加按钮控件等几个综合实例操作,用户通过练习从而巩固本章所学知识。添加按钮控件创建启动窗体1添加按钮控件在【6-6】创建的【销售人员信息】窗体中添加按钮控件。2创建启动窗体为【公司信息数据系统】数据库创建一个启动窗体。6.5本章小结

本章主要介绍了窗体的相关知识。首先介绍了窗体的概念及相关知识,包括窗体的功能、窗体的类型;接着介绍窗体的创建方法,包括快速创建窗体、窗体的视图、使用窗体向导创建窗体以及创建空白窗体;然后介绍了窗体的设计,包括窗体的设计视图、控件的使用、编辑控件的属性等;最后介绍的是主/子窗体的创建方法,包括利用向导、利用子窗体控件以及先创建表间关系,然后利用快速创建主/子窗体3种方法创建主/子窗体。6.6思考和练习1.窗体的功能是什么?窗体有几种类型?2.在Access中,窗体有几种视图?3.创建窗体的方法主要有哪些?简述方法和步骤。4.创建主/子窗体的方法有哪些?简述方法和步骤。5.以数据库School.accdb中的各个数据表为数据源,分别练习快速创建窗体、使用向导创建窗体等方法。ThankYou!第7章报表主要内容7.4报表数据中的分组和汇总

7.3编辑与打印报表7.2创建报表7.1报表概述学习目标

报表是Access数据库数据输出的一种对象,是以格式化的形式向用户显示和打印的一种有效方法。Access2021中使用报表来实现打印格式数据功能,将数据库中的表、查询的数据进行组合,形成报表,还可以在报表中添加多级汇总、统计比较、图片和图表等。本章主要介绍使用报表的方法。本章重点

创建报表

编辑报表报表统计计算

报表排序和分组7.1报表概述报表的视图报表的结构报表设计区报表的分类7.1报表概述7.1.1报表与窗体的区别7.1.2报表的视图7.1.3报表的结构7.1.4报表的分类7.1.1报表与窗体的区别报表与窗体一样,也是属于Access数据库系统中的一种对象,都可以显示数据表中的数据记录,其创建方式也基本相同,在运行时的效果也相差不多,如图7-1所示。除了输入数据,窗体的其他所有特点都适用于报表,各种窗体控件也适用于报表。窗体中的计算字段可根据记录数量执行统计操作,报表则可进一步按照分组、每页或全部记录执行统计。7.1.2报表的视图在Access中,报表共有4种视图:报表视图打印预览视图布局视图设计视图7.1.3报表的结构在Access中,报表的结构与窗体的结构相似,也是由报表页眉、页面页眉、主体、页面页脚和报表页脚5部分组成(在报表的设计视图中才能看到),如图7-2所示。7.1.3报表的结构

在Access2021中,报表是按节来设计的,并且只有在设计视图中才能查看报表的各个节。一个完整的报表有7部分组成,分别是报表页眉、页面页眉、分组页眉、主体、分组页脚、页面页脚和报表页脚。7.1.4报表的分类表格式报表纵栏式报表图表式报表标签式报表7.2创建报表7.2.1一键生成报表7.2.2使用向导创建报表7.2.3使用空报表创建报表7.2.4使用设计视图创建报表7.2.5创建标签报表7.2.6创建子报表7.2.7将窗体另存为报表7.2.1一键生成报表

报表工具提供了最快的报表创建方式,使用它可以为用户自动创建报表。自动创建的报表中将显示数据源的数据表或查询中的所有字段。7.2.2使用向导创建报表使用报表向导创建报表自动创建报表使用图表向导创建报表使用标签向导创建报表7.2.3使用空报表创建报表

如果使用报表工具或报表向导不能满足报表的设计需求,那么可以使用空白报表工具从头生成报表。使用空白报表工具创建报表是指首先创建一个空白报表,然后将选定的数据字段添加到报表中所创建的报表。使用这种方法创建报表,其数据源只能是表。7.2.4使用设计视图创建报表使用报表设计视图创建报表的一般操作方法如下:

(1)在数据库窗口左侧的对象列表中,单击“报表”对象,然后单击工具栏中的“新建”按钮。系统将打开“新建报表”对话框。

(2)在“新建报表”对话框的列表框中,选中“设计视图”选项,在“请选择该对象数据的来源表或查询”列表框中,指定一个数据表或查询作为报表的数据源,单击“确定”按钮,系统将打开报表的设计视图。

(3)将字段列表窗口中的字段或工具箱中有关对象拖放到设计视图窗口中,完成报表的设计。7.2.5创建标签报表

标签是一种特殊的报表,它是以记录为单位,创建格式完全相同的独立报表,主要应用于制作信封、打印工资条、学生成绩单等。单击标签工具将打开标签向导,根据向导提示可以创建各种标准大小的标签报表。7.2.6创建子报表子报表的定义和作用在已有的报表中创建子报表将某个已有报表添加到其他已有报表中来创建子报表7.2.7将窗体另存为报表窗体和报表有很多相似的地方,窗体的很多特点都适用于报表,各种窗体控件也适用于报表。在Access2021中,可以通过将窗体另存为报表来快速创建报表。7.3编辑和打印报表

在报表设计视图中可以对已经创建的报表进行编辑和修改,可以设置报表的格式,在报表中添加背景图片、日期和时间以及页码等,使报表显得更为美观。设计外观添加修饰元素7.3.1设计外观

报表主要用于输出和显示数据,因此外观设计很重要,报表设计要做到数据清晰并有条理地显示给用户。7.3.2编辑报表的页眉/页脚7.3.3应用主题在Access2021中,主题是一个非常重要的概念。对于Access2021的窗体和报表,主题可以设置配色方案、选定字体、字体颜色以及字号。7.3.3应用主题

在报表中除了显示主体内容外,还可以增加一些表现要素,使得报表的表现力更强。7.3.4避免出现空白报表如果Access找不到可以插入到报表的“主体”节中的有效记录,那么在查看报表时看到的将是空白的“主体”节。为避免出现这种问题,可以为报表添加“无数据”事件处理程序,指示在找不到数据的情况下不显示报表。7.3.5报表的预览和打印打开报表的打印预览视图有如下两种操作方法:

(1)在数据库窗口中,单击左侧的“报表”对象按钮,将当前窗口切换到报表对象列表窗口界面,双击其中需要打开的报表,即可打开该报表的打印预览视图。

(2)在报表的设计视图中,直接单击工具栏中的“视图”按钮,即可将当前报表切换到打印预览视图状态。1页面设置

在设计视图中,切换到【页面设置】选项卡,由【页面大小】和【页面布局】2个组构成。2打印设置

打开报表的打印预览视图,在【打印预览】选项卡的【打印】组中单击【打印】按钮,打开【打印】对话框。用户在对话框中指定打印机名称、打印范围以及打印份数等,然后单击【确定】按钮即可。

7.4报表数据中的分组和汇总Access中的报表默认显示连接的数据源表中的所有记录,当记录过多时,会使报表数据的查看有些困难,这时,可以使用Access2021的分组和汇总功能,将报表中具有相同特征的记录分组并进行排序,也可对数据进行汇总统计计算。7.4报表数据中的分组和汇总7.4.1报表数据中的分组7.4.2在组页眉中创建表达式7.4.3对报表中的分组数据进行排序7.4.4汇总报表数据7.4.1报表数据中的分组

报表排序和分组是报表设计中重要操作,可以重新组织数据并呈现在报表中,满足用户不同的应用需求。报表排序报表分组2报表分组

在实际工作中,经常需要对数据进行分组、汇总。分组是将报表中具有共同特征的相关记录排列在一起,并且可以为同组记录进行汇总统计。使用Access2021提供的分组功能,可以对报表中的记录进行分组。对报表的记录进行分组时,可以按照一个字段进行,也可以对多个字段分别进行。7.4.2在组页眉中创建表达式对报表数据添加分组后,会向报表中添加两个新的节,即“组页眉”和“组页脚”。如【例7-8】中当选择Tgender字段进行分组后,Access会立即向报表的设计中添加“Tgender页眉”和“Tgender页脚”节。“Tgender页眉”节显示在“页面页眉”和“主体”节之间。报表排序在报表中添加排序的最快方法是在布局视图中打开需要排序的报表,然后右击要对其应用排序的字段,选择快捷菜单中的升序降序命令。在布局视图或设计视图中打开报表时,还可以使用【分组、排序和汇总】窗格来添加排序。7.4.3对报表中的分组数据进行排序7.4.4汇总报表数据

对报表中包含的记录可以进行计算。在报表中添加计算控件,并设置其【控件来源】属性。文本框控件是报表中最常用的计算控件,【控件来源】属性中输入计算表达式,当表达式的值发生变化时,会重新计算并输出结果。报表节中的统计计算规则计算平均值1报表节中的统计计算规则

在Access2021中,报表是按节来设计的。选择用来放置计算型控件的报表节是很重要的,根据控件所在的位置确定如何计算结果。2计算平均值

使用Access的报表求和功能可以使数据更容易理解。本节将介绍在布局视图中使用求和,布局视图是向报表添加总计、平均值,以及其他求和最快的方式。首先介绍了窗体和报表的区别、报表的视图、报表的结构及分类等;然后介绍了如何创建报表,包括一键生成报表、使用向导创建报表、使用空报表创建报表、使用设计视图创建报表、创建标签报表和创建子报表以及将窗体另存为报表;接着介绍了编辑和打印报表,包括设计报表的外观、编辑报表的页眉/页脚、应用主题、避免出现空白报表,报表的页面设置和打印预览等;最后介绍了报表数据中的分组和汇总,包括在报表数据中添加分组、对分组数据进行排序以及汇总报表数据等。7.5本章小结7.6思考和练习1.报表有几种视图?如何在各视图间进行切换?2.如何在报表中添加页码?3.如何在报表中添加分组?4.什么是子报表?如何创建子报表?5.创建一个课程信息报表,要求按学分进行分组。ThankYou!第8章宏主要内容8.4宏的安全设置

8.3数据宏8.2创建和使用宏

8.1宏简介教学目标通过本章的学习,读者应该能够理解宏的概念及其类型,掌握创建与运行宏的方法,理解常用的事件与宏操作命令,能独立创建一些简单的宏对象。教学重点理解宏的概念及其类型掌握创建与运行宏的方法理解常用的事件与宏操作命令能独立创建一些简单的宏对象8.1宏概述8.1.1宏与事件8.1.2宏的类型8.1.3宏的设计视图8.1.1宏与事件1.什么是宏?宏就是一个或多个操作的集合。其中的每个操作都能够自动地实现特定的功能。在Access中,可以为宏定义各种类型的动作,如打开和关闭窗体、显示及隐藏工具栏、预览或打印报表等。通过运行宏,能够有次序地自动完成一连串的操作,包括各种数据、键盘或鼠标的操作。8.1.1宏与事件2.什么是事件?事件过程是为响应由用户或程序代码引发的事件或由系统触发的事件而运行的过程。事件(Event)是指对象所能辨识或检测的动作,当此动作发生于某一个对象上,其相对的事件便会被触发,而如果用户已预先替此事件编写了宏或事件程序,此宏或事件程序便会被执行。8.1.1宏与事件3.将宏分配给事件为了使应用程序更便于使用,可将宏分配给某个对象的事件。将宏与控件或窗体、报表的事件进行绑定的方法如下。(1)首先创建独立的宏,然后打开窗体或报表的“设计视图”。(2)打开“属性表”窗口,选择要绑定的事件的主体(窗体、报表或控件),在“事件”选项卡中找到要绑定的事件。(3)在具体的事件属性右侧的下拉列表框中选择已创建好的宏,如图8-1所示。8.1.2宏的类型简单宏宏组条件宏数据宏1.简单宏

简单宏是最基本的宏类型,由一条或多条简单操作组成,执行宏时按照操作的顺序逐条执行,直到操作完毕为止。例如,可执行一个简单宏,用于在用户单击某个命令按钮时打开某个窗体。2.宏组宏组实际上是以一个宏名来存储的相关的宏的集合,宏组中的每一个宏都有一个宏的名称,用于标识宏,以便在适当的时候引用宏。这样可以更方便地对宏进行管理,对数据库进行管理,例如,可以将同一个窗体上使用的宏组织到一个宏组中。3.条件宏条件宏是指通过条件的设置来控制宏的执行。在某些情况下,可能希望仅当特定条件为真时,才执行宏中的相应操作。这时可以使用宏的条件表达式来控制宏的流程。条件表达式的结果为True/False或“是/否”,只有当表达式的结果为True(或“是”)时,才执行宏操作。4.数据宏使用数据宏的目的是更容易在应用程序中实现一致的数据处理,即使应用程序在Web上运行时也是一样。由于数据宏是在表级别应用的,因此,每次更新表数据时发生的操作完全相同。尽管可用于数据宏的操作子集要比标准宏小得多,但是如果精心设计和实施,数据宏可以为Access应用程序添加强大的功能。8.1.3宏的设计视图

在【创建】选项卡的【宏与代码】组中单击【宏】按钮,进入宏的操作界面,其中包括【宏工具/设计】选项卡、【操作目录】窗格和宏设计窗口3个部分。8.2创建与使用宏创建简单宏创建子宏创建条件宏编辑宏运行宏错误处理与宏调试8.2.1创建简单宏

创建简单宏,需要在宏设计窗口中添加宏操作命令,提供注释说明及设置操作参数。通常情况下,当单击操作参数列表框时,会在列表框右侧出现下拉按钮,单击后可在弹出的下拉列表中选择操作参数。8.2.1创建简单宏要创建一个最基本的宏,具体操作方法如下:

(1)在“数据库”窗口中,单击“对象”列表下的“宏”对象按钮,将数据库窗口切换到宏对象列表界面。

(2)单击“数据库”工具栏上的“新建”按钮,系统将打开宏的设计视图。

(3)用鼠标单击“操作”列的单元格,对应的单元格将显示一个下拉三角按钮,单击该三角按钮,系统将显示一个下拉列表,从中选择需要的操作命令。

(4)在“操作参数”区设置相应操作命令的参数。

(5)重复以上步骤,直到添加完所需要的所有操作命令序列,单击“保存”按钮保存所创建的宏即可。8.2.2创建子宏【例8-2】创建一个宏,其中包括3个子宏,分别用来打开“教师”、“院系”和“学生”窗体。(1)启动Access2021,打开School.accdb数据库。(2)单击“创建”选项卡下“宏与代码”组中的“宏”按钮,将打开宏的设计视图。(3)在“添加新操作”下拉列表中选择或直接输入Submacro命令,按回车键将出现一块“子宏”区域,在该区域中,可以输入与该子宏关联的操作。如图8-10所示,在“子宏”区域中,包括子宏名称和“添加新操作”列表以及子宏结束标识EndSubmacro。8.2.3创建条件宏创建条件宏的一般方法和创建宏的基本上相同,不同之处在于,条件宏的设计视图中,添加了“条件”列。“条件”列在默认情况下是不显示出来的。要将该列显示在宏设计视图中,选择“视图”|“条件”命令即可。在“条件”列中,可以设置一些条件,这样,在运行该宏时,只有符合了这些条件,系统才会运行相应“操作”单元格中的操作。8.2.3创建条件宏

在某些情况下,可能希望当且仅当特定条件为真时,才在宏中执行一个或多个操作。例如,如果在某个窗体中使用宏来校验数据,可能要显示相应的信息来响应记录的相应输入值。在这种情况下,可以使用条件来控制宏的流程。创建宏组如果要将几个相关的宏组织在一个设计视图窗口中,而不是将它们分别创建成宏对象,则可以将它们组织成一个宏组。创建宏组的一般方法和创建宏的基本上相同,不同之处在于,宏组的设计视图中,添加了“宏名”列。8.2.4编辑宏在“宏生成器”中,用户可以根据需要对已经建立的宏进行编辑,包括添加、移动、复制和删除等操作。8.2.5运行宏测试宏运行宏1.使用RunMacro命令运行宏2.通过“执行宏”对话框运行宏3.自动运行的宏8.2.6错误处理与宏调试1.OnError操作OnError操作允许确定在宏中发生错误时执行什么操作。该操作具有两个参数,分别是“转至”和“宏名称”。“转至”参数有3个可取值,只有当“转至”设置为“宏名”时,“宏名称”参数才有意义2.MacroError对象MacroError对象封装了最后一个宏错误的信息。它会一直保留该信息,直到发生新的错误,或者使用ClearMacroError操作将其清除。该对象包含大量只读属性,如下所示,可以从宏本身或VBA代码访问这些属性。调试宏

在宏的设计过程中,可以对宏进行调试。宏调试的目的,就是要找出宏的错误原因和出错位置,以便使设计的宏操作能达到预期的效果。对宏进行调试,可以采用Access的单步调试方式,即每次只执行一个操作,以便观察宏的流程和每一步操作的结果。通过这种方法,可以比较容易地分析出错的原因并加以改正。

调试宏在设计宏时,可能会出现各种不可避免的错误或设计缺陷。除了前面介绍的OnError操作,Access还提供了方便的调试工具,以帮助用户调试自己的应用程序。单步运行是Access数据库中用来调试宏的主要工具。采用单步运行,可以观察宏的流程和每一个操作的结果,以排除导致错误的操作命令或预料之外的操作结果。8.3数据宏

8.3.1表事件前期事件后期事件8.3.2数据宏的操作目录8.3.3创建数据宏8.3.1表事件所谓的数据处理事件,就是对某数据执行的某种特定的动作。在Access中,经常用到的数据处理事件如下:AfterDelConfirm、AfterInsert、AfterUpdate、BeforeDelConfirm、BeforeInsert、BeforeUpdate、Change、Current、Delete、Dirty和NotInList事件。8.3.1表事件Access中的焦点处理事件如下:Activate、Deactivate、Enter、Exit、GetFocus和LostFocus事件。8.3.1表事件Access中的鼠标操作事件如下:Click、DblClick、MouseDown、MouseMove和MouseUp事件。Access中键盘输入事件如下:KeyDown、KeyPress和KeyDUp事件。8.3.2数据宏的操作目录Access提供了许多基本宏操作,下列是其中一些比较常用到的宏操作:AddMenu、ApplyFilter、Beep、CancelEvent、CopyDatabaseFile、CopyObject、DeleteObject、Close、Echo、FindNext、FindRecord、GoToControl、GoToRecord、Maximiz、Minimize、MsgBox、OpenForm、OpenReport、OpenQuery、PrintOut、Quit、RepaintObject、Restore、RunMacro、SetValue和StopMacro。8.3.3创建数据宏无论打开的是表数据表视图还是设计视图,都可以非常方便地向表中添加数据宏。8.3.1节介绍表事件的时候打开的是表的数据表视图,在这种视图下,单击图8-42中的任意一种事件,即可创建对应事件的数据宏,并打开数据宏设计器,如图8-45所示为“更改前”事件的数据宏设计器。8.4宏的安全设置在Access中,宏的安全性是通过“信任中心”进行设置和保证的。当用户打开一个包含有宏的文档时,“信任中心”首先要对以下各项内容进行检查,然后才会允许在文档中启用宏。开发人员是否使用数字签名对这个宏进行了签名。该数字签名是否有效,是否过期。与该数字签名关联的证书是否是由权威机构颁发的。对宏进行签名的开发人员是否为受信任的发布者。8.4.1解除阻止的内容8.4.2信任中心设置8.5宏实例将宏对象转换为VisualBasic代码判断空报表检索数据8.6实例演练

本章的实例演练部分为创建嵌入宏这个综合实例操作,用户通过练习从而巩固本章所学知识。ThankYou!第9章数据库的

安全管理主要内容9.4备份与还原数据库

9.3数据库的压缩与修复9.2数据库的保护9.1数据库安全定义9.5数据的导入与导出

9.6Access中的安全机制

教学目标通过本章的学习读者应该掌握数据库的压缩与备份的方法,掌握使用用户级安全机制的方法,了解其他保护数据库的措施。教学重点掌握数据库的压缩与备份的方法掌握使用用户级安全机制的方法了解其他保护数据库的措施9.1数据库安全定义数据库安全(DatabaseSecurity)本身具有两个方面的含义:一是系统运行安全方面的,系统运行的安全受到影响就有可能导致系统无法正常运行,一些网络不法分子专门通过互联网来入侵其他用户计算机,使得计算机系统出现故障,损坏计算机系统的CPU;二是计算机系统信息的安全,网络不法分子侵入用户系统,主要是为了窃取用户数据库中的重要信息或者破坏系统数据库内的重要信息。数据库系统的安全特性是针对数据而言的,主要包括数据安全性、数据独立性、数据完整性、故障恢复等方面的内容。9.2数据库的保护9.2.1存储隐患9.2.2安全性问题的解决策略9.2.1存储隐患1.存储路径2.

加密方式3.

默认权限引发的安全漏洞4.

平台上的漏洞5.

消除安全漏洞的方法9.2.2安全性问题的解决策略1.通过编程改进Access数据库的加密算法2.

消除由Admin用户引发的漏洞3.

改进数据库的加密机制4.

提高平台的安全性5.

Access数据库系统安全的新策略采用复杂加密算法对数据库文件的文件特征说明部分和数据库字段说明部分进行加密用本地计算机的硬件信息作为密钥的一部分,9.3数据库的压缩与修复9.3.1压缩和修复数据库9.3.2设置权限9.3.3设置密码9.3.4使用密码9.3.5撤销密码9.3.1压缩和修复数据库为了压缩和恢复Access数据库,执行该操作的用户必须具有相应数据库的“打开/运行”和“以独占方式打开”权限。压缩和修复当前Access数据库的方法如下:

(1)打开要压缩和修复的Access数据库。如果该文件位于服务器或共享文件夹中,作为共享数据库存在,在执行压缩和修复时请确保没有其他用户打开该数据库。(

2)在菜单栏中选择“工具”|“数据库实用工具”|“压缩和修复数据库”命令。9.3.2设置权限Jet数据库引擎使用基于工作组的安全模型(也称为用户级安全性)来判断谁可以打开数据库,并保护数据库所包含对象的安全。无论是否明确设置了数据库的安全性,用户级安全性对所有Access数据库始终处于打开状态。可以通过操纵用户和组帐户的权限和成员身份来更改Access中的默认安全级别。无论何时启动Access,Jet数据库引擎都要查找工作组信息文件,工作组信息文件包含组和用户信息(包括密码),这些信息决定了谁可以打开数据库,以及他们对数据库中的对象的权限。9.3.3设置密码数据库管理软件打开文件要求用户输入密码,如果用户输入密码与数据库文件中保存的密码数据不一致,则拒绝打开数据库文件。Access只是简单运用异或运算修改头文件中的若干位来达到加密的目的,数据库系统通过将用户输入的密码与某一固定密钥进行异或来形成一个加密串,并将其存储在*.mdb文件中从地址“&H42”开始的区域内。9.3.3设置密码(续)Access2021中的加密工具可以使数据无法被其他工具读取,并强制用户只有在输入密码后才能使用数据库。使用Access2021加密工具时,需注意下列规则。新的加密功能只适用于.accdb文件格式的数据库。Access2021加密工具使用的算法比早期的加密工具使用的算法更强。如果需要对旧版数据库(.mdb文件)进行编码或应用密码,Access2021将使用Access2003中的编码和密码功能。9.3.4使用密码9.3.5撤销密码Access2021在允许用户加密数据库的同时,也提供了修改与撤销密码的功能。要撤销数据库的密码也需要以独占方式打开数据库,选择“文件”选项卡中的“信息”选项,然后选择右侧窗口中的“解密数据库”命令。在“密码”文本框中输入之前为数据库设置的密码,单击“确定”按钮,即可撤销数据库的密码。9.4备份与还原数据库可以使用“MicrosoftWindows2021备份及故障恢复工具”或其他备份软件备份Access数据库。使用“MicrosoftWindows2021备份及故障恢复工具”的方法如下:(1)选择“开始”|“所有程序”|“附件”|“系统工具”|“备份”命令,激活“MicrosoftWindows2021备份及故障恢复工具”。(2)用户可以在主体框中选择文件或文件夹,然后在左下部的“备份媒体或文件名”栏中输入备份文件的名称,然后单击“开始备份”按钮。(3)数据库信息发生损失,就可以根据这个备份文件恢复数据库的原态,尽量减少系统的损失。方法是进入“MicrosoftWindows2021备份及故障恢复工具”中,选择“还原”选项卡,在其中设置还原文件。9.5数据的导入与导出9.5.1数据的导入9.5.2数据的导出9.6Access中的安全机制9.6.1

用户级安全机制9.6.2

工作组信息文件9.6.3

用户与组账户9.6.1用户级安全机制在Access

2003或者更低版本的Access中提供了用户级安全机制。但对于使用Access2007~2016新文件格式创建的数据库(.accdb和.accde文件),Access2021不提供用户级安全机制。如果在Access2021中打开早期版本创建的数据库,并且该数据库应用了用户级安全机制,则该安全功能对数据库仍然有效。但是如果将该数据库转换成新格式后,Access2021将丢弃原有的用户级安全机制。Access数据库中的权限类型权限名称允许的操作打开/运行打开数据库、窗体或报表或者运行数据库中的宏。以独占方式打开以独占访问权限打开数据库。读取设计在“设计”视图中查看表、查询、窗体、报表或宏。修改设计查看和更改表、查询、窗体、报表或宏的设计,或进行删除。管理员对于数据库,设置数据库密码、复制数据库并更改启动属性。对于表、查询、窗体、报表和宏,具有对这些对象和数据的完全访问权限。读取数据查看表和查询中的数据。更新数据查看和修改表和查询中的数据,但并不向其中插入数据或删除其中的数据。插入数据查看表和查询中的数据,并向其中插入数据,但不修改或删除其中的数据。删除数据查看和删除表和查询中的数据,但不修改其中的数据或向其中插入数据新建MicrosoftAccess工作组信息文件管理人员可以自己创建MicrosoftAccess工作组信息文件来控制用户的访问权限。新建工作组信息文件的方法如下:(1)启动MicorsoftAccess。(2)选择“工具”|“安全”|“工作组管理员”命令。(3)在弹出的“工作组管理员”对话框中,单击“创建”命令按钮。(4)在“工作组所有者信息”对话框中,输入相应的姓名和组织名称,然后输入工作组ID。(5)接下来,在“工作组信息文件”对话框中输入该信息文件(*.mdw)的具体保存路径和名称,作为存储工作组信息的文件。用户也可以通过“浏览”按钮指定文件位置,然后单击“确定”按钮完成操作。9.6.2工作组信息文件安全账户定义了哪些用户和组可以访问数据库中的对象,这一信息称为工作组信息,并存储在工作组信息文件中。Access依赖工作组信息文件来实行用户级安全机制。Access工作组信息文件存储了有关工作组成员的信息。Access会在打开数据库时,读取工作组信息文件中包含的工作组中的用户信息,该信息包括用户的账户名、密码、所属的组和权限,以确定哪些用户可以访问数据库中的对象和他们对这些对象的权限。9.6.3

用户与组账户Access工作组信息文件中包含以下几个预定义的账户:管理员:默认的用户账户,具有管理Access数据库的权限。管理员组:管理员的组账户。管理员组中至少有一个管理员权限的账户,组中所有成员都能够管理Access数据库。最初建立数据库时,管理员组只包含一个管理员账户。用户组:包含所有用户账户的组账户。默认情况下,该账户对所有新建对象都拥有完全权限。当使用管理员账户新建一个账户时,该账户将被自动分配到用户组中。9.6.3用户与组账户帐户功能管理员默认的用户帐户。该帐户对所用的MicrosoftAccess副本和其他可以使用MicrosoftJet数据库引擎的应用程序,如MicrosoftVisualBasicforApplications和MicrosoftExcel等都是完全一样的。管理员组管理员的组帐户。该帐户对每个工作组信息文件是唯一的。在默认情况下,“管理员”用户位于“管理员”组中。在任何时刻“管理员”组中都必须至少要有一个用户。用户组包含所有用户帐户的组帐户。当“管理员”组的成员创建用户帐户时,MicrosoftAccess会自动将用户帐户添加到“用户”组中。该帐户对所有工作组信息文件都是相同的,但它只包含由该工作组的管理员组成员所创建的用户帐户。在默认情况下,该帐户对所有新建对象都拥有完全权限。要删除用户组中的用户帐户,只能由“管理员”组的成员进行。通过向导建立用户组安全机制

设置用户组安全机制的操作步骤如下:

(1)打开要设置安全的数据库。

(2)选择菜单栏中“工具”|“安全”|“设置安全机制向导”命令,激活用户级安全机制向导。

(3)根据向导对话框的提示进行设置,直到建立用户组安全机制操作完毕为止。9.7本章小结数据库安全是保证数据不被篡改、机密数据不被泄漏的重要机制,本章重点介绍了数据库安全与管理相关的知识。首先介绍的是数据库的压缩与备份的操作方法;然后介绍了Access的安全机制,如何对数据库进行加密和解密操作。本章内容比较简短,通过本章的学习,使读者能够加强数据库的安全管理,提高安全意识。9.8思考和练习1.如何压缩数据库?2.简述备份和还原数据库的方法与步骤。3.如何为数据库设置密码?4.加密自己的Access数据库。5.操作题:将提供的CSV客户数据导入Access,并导出为PDF报告。6.如何实现每日自动备份数据库到云端(结合VBA与API)?ThankYou!第10章数据库应用系统开发实例第10章应用系统设计开发学习Access的目的不仅仅是为了使用,更为重要的是要学会如何进行应用系统的开发。这也是学习和使用Access数据库管理系统软件的最终目标,也是对本书学习过程的一个全面的综合运用和训练。本章以前面各章讲到的“学生成绩管理系统”数据库为实例,前后呼应,贯穿一线,介绍如何设计一个Access数据库应用系统。同时,介绍数据库应用系统开发的一般过程,实现学习本书的预期目标。10.110.210.310.4数据库应用系统设计流程需求分析及主要功能模块设计数据库建立操作界面创建成绩管理系统报表10.5实现学生成绩管理系统10.610.7维护学生成绩管理系统10.1数据库应用系统设计流程数据库应用系统的开发设计过程一般采用生命周期理论。生命周期理论是应用系统从提出需求、形成概念开始,经过分析论证、系统开发、使用维护,直到淘汰或被新的应用系统所取代的一个全过程。其设计过程可以分为6个阶段:需求分析、概念设计、逻辑设计、物理设计、数据库实施和运行、数据库的使用和维护。结合Access自身的特点,使用Access开发一个数据库应用系统,其系统设计步骤如下:首先用户提出要求;初步调查,了解情况,进行可行性分析;设计数据库,建立系统功能模块结构图;设计数据输入界面,如窗体、数据访问页等;设计数据输出界面,如报表、查询界面等;设计宏操作及VBA程序代码;设计系统菜单;系统测试和系统功能改进;打包,制作安装程序和使用说明书;系统最后测试修正;交付用户,发布完成。通常开发一个数据库应用系统是由用户提出的,开发人员到用户处进行初步调查,了解情况,拟订初步方案,在征得用户的同意后,开始系统的分析与设计。现在就以“学生成绩管理系统”数据库系统为例,说明如何用Access完整地开发一个数据库应用系统。10.2需求分析及主要功能模块学生成绩管理信息是学校的一项重要数据资源,因而学生成绩管理必然成为学校的一项常规性的重要工作,是学校管理工作中不可缺少的一部分,为了适应教育改革和推进素质教育发展的需要,学生成绩管理从以前的手工管理逐渐被规范化的管理信息系统所代替是必然的趋势。学生成绩管理应用系统功能模块图,如图10-1所示。在数据库应用系统开发的实施阶段,一般采用“自顶向下”的设计思路和步骤来开发系统,这样,以功能模块为单位将整个数据库程序组成一个有层次的树形结构。该系统共有三层,我们只做出了学生信息管理的下层菜单,其他的如教师信息管理、选课信息管理、学生成绩管理等的下层菜单省略。学生成绩管理系统退出系统信息管理按姓名查分按课程查分学生平均成绩班级平均成绩课程平均成绩选课信息管理学生成绩管理打印报表基本信息管理图10-1学生成绩管理应用系统功能模块图1.教师信息管理功能完成对教师档案的管理,包括教师基本资料和授课信息的录入、查询、统计、预览报表等功能。2.学生信息管理功能完成对学生档案的管理,包括学生基本资料的录入、修改、查询、统计、预览报表等功能。3.选课信息管理功能完成选课信息管理,包括学生选课信息和课程信息的录入、查询、浏览、统计、预览报表等功能。4.学生成绩管理功能完成学生成绩的管理,包括成绩的录入、查询、浏览、统计、预览报表等功能。5.系统维护完成系统维护,包括用户密码更改、数据备份等。10.3设计数据库在进行数据库应用系统开发时,一定要设计好数据库,设计好数据库中应有的数据表和数据表之间的关系、数据表的结构,然后再设计由数据表生成的查询,设计窗体和报表,以及使用宏和VBA对成绩管理系统的开发。数据库应用系统的数据量越大,数据的来源越复杂,数据库设计的好坏就越显得重要,它将影响着整个系统的设计过程。10.3.1设计数据库的过程设计数据库要完成以下几个工作:收集数据:就是将与数据库应用系统相关的数据汇集到一起。分析数据:根据数据库应用系统的需求,分析确定数据的来源,删除重复数据,删除无关数据。规范数据:按“数据规范化”原则,设计数据库应该使用多少个数据表,并合理定义每个数据表的结构以及数据类型。建立关联:在数据库中,确定表之间的关系。10.3.2创建数据库创建Access数据库,是创建数据库应用系统的第一步,第1章已经介绍了数据库的创建,这里就不再叙述建立数据库的方法和步骤了。10.3.3建立数据表表是数据库应用系统的最基本的数据资源,是整个系统运行过程中全部数据的来源,在”学生成绩管理系统”数据库中,有学生表、教师表、教师授课表、选课成绩表、课程表和专业表共6个表。通过表设计器在“学生成绩管理系统”数据库中创建的数据表,如图10-2所示。1.创建表本例根据分析确定系统要设置如下表:学生表,包括字段:

学号、姓名、性别、出生日期、入校日期、团员否。学号为主键,为专业编号建立索引,通过该索引和专业基本表建立关联。字段名类型宽度小数位数索引学号字符型12

主索引姓名字符型8

性别字符型2

出生日期日期型

是否团员逻辑型

照片通用型

入学时间日期型

入学成绩数值型30

专业编号字符型4

普通索引简历备注型

表10-1学生表结构教师表,包括字段:教师编号、教师姓名、性别、职称、通讯地址、邮政编码、电话、电子信箱。教师编号为主索引。字段名类型宽度小数位数索引教师编号字符型4

主索引教师姓名字符型8

性别字符型2

职称字符型8

通讯地址字符型40

邮政编码字符型6

电话字符型20

电子信箱字符型40

表10-2教师表结构课程表,包括字段:课程编号、课程名称、学时、学分、课程性质。课程编号为主索引。选课成绩表,字段包括:学号、课程编号、开课时间、成绩。分别为学号、课程编号、开课时间、成绩建立索引,通过学号和学生表建立关联,通过课程编号和课程表建立关联,开课时间和成绩索引用于做统计计算。教师任课表,包括字段:教师编号、课程编号。分别为教师编号和课程编号建立索引,通过教师编号和教师表建立关联,通过课程编号和课程表建立关联。专业表,字段包括:专业编号、专业名称、所属系。为专业编号建立索引,通过专业编号和学生基本表建立关联。其它各表都已在第2章中创建过了,这里也不再赘述。10.3.4建立表之间的关系数据库中的数据表创建完成后,便可以建立表之间的关系,这是数据库建立的另一个重要环节。在建立表之间的关系时,必须注意两点,一是两表必须存在共同的公共字段;二是将主(父)表中的公共字段设置为主键,然后再建立两表之间的关系。“学生成绩管理系统”数据库的“关系”窗口,如图10-2所示。图10-2各数据表之间的关系该窗口反映的是已创建好的数据表之间的关系。10.4建立操作界面数据库应用系统中的数据操作界面,都是通过不同功能的窗体来完成的,一个较全面的数据库应用系统,应有的数据窗体包括数据输入、数据维护、数据浏览以及数据查询等几种类型的窗体。10.4.1“数据输入”窗体“数据输入”窗体是原始数据表输入的操作界面,提供增加和保存数据的功能,保证数据输入的准确、快捷。在“学生成绩管理系统”数据库中,学生表的“数据输入”窗体,如图10-3所示。图10-3学生表的“数据输入”窗体在“学生成绩管理系统”数据库中,教师表的“数据输入”窗体,如图10-4所示图10-4教师表的“数据输入”窗体10.4.2“数据浏览”窗体“数据浏览”窗体是用来浏览系统全部资源的工作界面,“数据浏览”窗体应有查看数据功能,“学生情况一览表”窗体,如图10-5所示。图10-5“数据浏览”窗体10.4.3“数据维护”窗体 “数据维护”窗体是用来维护系统全部数据资源的工作界面,数据维护窗体应有修改、删除、增加以及保存数据等功能,学生档案维护窗体,如图10-6所示。图10-6“数据维护”窗体10.4.4“数据查询”窗体“数据查询”窗体是系统进行数据信息检索的工作界面,“数据查询”窗体应有查找、发布、浏览以及输出数据信息等功能。学生基本信息查询窗体,如图10-7所示。图10-7“数据查询”窗体10.5创建成绩管理系统报表前面已经介绍过如何在Access中创建报表,报表是利用数据表、查询及控件,将数据库中的数据信息提取出来,有结构地分级显示在用户面前,然后按指定的格式打印输出。10.5.1设计单表报表数据库应用系统的报表有许多是以原始的一个数据表为直接数据源的,这类报表比较简单,在制作这类报表时,要注意设计好报表的布局、页面附加标题和各种说明信息。教师基本情况报表,如图10-8所示。图10-8教师基本情况报表10.5.2设计报表如果在设计数据库应用系统的报表时,报表的数据源是多个数据表,那么,首先要以多表创建查询作为多表报表的数据源,事实上多表报表的数据源来自于查询。学生成绩单报表,如图10-9所示。图10-9学生成绩单报表10.5.3设计统计汇总报表统计汇总报表是在设计报表时,对报表的数据源进行统计分析,使报表输出的数据不仅是数据源中原有的内容,同时还有统计结果。学生成绩汇总报表,如图10-10所示。图10-10学生成绩汇总报表10.6实现学生成绩管理系统学生成绩管理系统的功能包括:学生信息和教师信息的录入、浏览、更新、查询和打印。该系统的基本流程是启动“学生成绩管理系统”时,首先打开“系统登录”窗体,要求输入用户密码,若密码正确,系统打开“主界面”窗体。“主界面板”窗体包含控制整个数据库的各项功能。10.6.1创建“系统登录”窗体双击“学生成绩管理系统.mdb”数据库文件,进入登陆界面,如图

温馨提示

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

评论

0/150

提交评论