• access是什么软件 > 数据库系统与access教程第一章数据库原理第二章Access 2002开发 ...
  • 数据库系统与access教程第一章数据库原理第二章Access 2002开发 ...

    免费下载 下载该文档 文档格式:DOC   更新时间:2011-10-05   下载次数:0   点击次数:1


    数据库系统与access教程
    第一章 数据库原理
    第二章 Access 2002开发环境
    第三章 创建Access数据库
    第四章 建造Access
    第五章 Access查询
    第六章 使用窗体
    第七章 建立Access报表
    第八章 数据访问页
    第九章 Access宏的使用
    第十章 模块和应用程序设计
    第十一章 Access数据库的管理

    第一章 数据库原理
    1.1 数据库系统
    1.2 数据库应用系统
    1.3 数据模型
    1.4 关系数据库的设计
    1.5 Access2002与数据库的关系
    小结与练习
    1.1数据库系统
    一,数据处理技术的发展状况
    1.非关系型数据库系统
    层次模型和网状模型
    2.关系型数据库系统
    数据按二维表组织
    3.面向对象数据库系统
    模块化程序设计变为面向对象的程序设计的
    数据库系统的设计
    1.1数据库系统
    二,数据库系统简介
    1.数据库
    2.数据库管理系统
    3.数据库系统=数据库+数据库管理系统
    1.1数据库系统
    三,数据库系统的组成
    1.硬件
    2.软件
    3.数据库
    4.数据库管理员
    1.2数据库应用系统
    数据库应用系统DBAS:指数据库应用程序系统, 它针对某一个实际应用管理对象而设计开发的一个面向用户的软件系统.如:学生管理系统.
    1.3数据模型
    一,信息,数据和实体
    信息对客观事物或抽象概念的描述
    数据对客观事物或抽象概念的符号化的描述
    实体客观存在并可相互区别的事物
    1.3数据模型
    二,实体间的联系
    1,一对一联系集
    A中的一个实体至多同B中的一个实体相联系,而B中的一个实体也至多同A中的一个实体相联系,如图2-3-1所示.
    2,一对多联系集
    A中的一个实体可以同B中的任意数目(包括0)的实体相联系,而B中的一个实体至多同A中的一个实体相联系,如图2-3-2所示.
    1.3数据模型
    3,多对多联系集
    A中的一个实体可以同B中任意数目(包括0)的实体相联系,而B中的一个实体也可以同A中任意数目(包括0)的实体相联系,如图2-3-3所示.
    图2-3-1:一对一的联系集
    图2-3-2:一对多的联系集
    图2-3-3:多对多的联系集
    1.3数据模型
    三,数据模型
    层次模型 :分别用记录和链接来表示数据和数据间的联系.与网状模型不同的:层次模型中的记录只能组织成树的集合而不能任意图的集合.
    1.3数据模型
    三,数据模型
    网状模型中的数据用记录(与Pascal语言中的记录含义相同)的集合来表示,数据间的联系用链接(可看作指针)来表示.数据库中的记录可被组织成任意图的集合.
    1.3数据模型
    三,数据模型
    关系模型用表的集合来表示数据和数据间的联系.每个表有多个列,每列有唯一的列名.
    1.4关系数据库的设计
    数据库的设计
    需求分析
    概念设计
    逻辑设计
    物理设计
    二 数据库应用系统的设计
    1.5 Access2002与数据库的关系

    Access2002一个桌面关系型的数据库管理系统.
    练习
    P10 1, 2

    我们举个例子来说明这个问题:每个人都有很多亲戚和朋友,为了保持与他们的联系,我们常常用一个笔记本将他们的姓名,地址,电话等信息都记录下来,这样要查谁的电话或地址就很方便了.这个"通讯录"就是一个最简单的"数据库",每个人的姓名,地址,电话等信息就是这个数据库中的"数据".我们可以在笔记本这个"数据库"中添加新朋友的个人信息,也可以由于某个朋友的电话变动而修改他的电话号码这个"数据".不过说到底,我们使用笔记本这个"数据库"还是为了能随时查到某位亲戚或朋友的地址,邮编或电话号码这些"数据".
    实际上"数据库"就是为了实现一定的目的按某种规则组织起来的"数据"的"集合",在我们的生活中这样的数据库可是随处可见的啊.
    小结:数据库什么
    图书管理员在查找一本书时,首先要通过目录检索找到那本书的分类号和书号,然后在书库找到那一类书的书架,并在那个书架上按照书号的大小次序查找,这样很快就能找到我所需要的书.
    数据库里的数据像图书馆里的图书一样,也要让人能够很方便地找到才行.
    如果所有的书都不按规则,胡乱堆在各个书架上,那么借书的人根本就没有办法找到他们想要的书.同样的道理,如果把很多数据胡乱地堆放在一起,让人无法查找,这种数据集合也不能称为"数据库".
    数据库的管理系统就是从图书馆的管理方法改进而来的.人们将越来越多的资料存入计算机中,并通过一些编制好的计算机程序对这些资料进行管理,这些程序后来就被称为"数据库管理系统",它们可以帮我们管理输入到计算机中的大量数据,就像图书馆的管理员.
    我们将要学习的Access也是一种数据库管理系统
    小结:什么数据库管理系统
    第二章Access 2002开发环境
    2.1 Access 2002数据库简介
    2.2 Access 2002的开发环境
    2.3浏览Access 2002
    2.4习题和上机操作
    2.1 Access 2002数据库简介
    一, Access系列产品简介
    Access1.0
    Access2000
    Access2002
    Access2003
    2.1 Access 2002数据库简介
    二, Access 2002数据库的特点

    使用 Microsoft Access 可以在一个数据库文件中管理所有的用户信息.在该文件中,可以:
    用表存储数据.
    用查询查找和检索所需的数据.
    用窗体查看,添加和更新表中的数据.
    用报表以特定的版式分析或打印数据.
    用数据访问页查看,更新或分析来自 Internet 或 Intranet 的数据库数据.
    2.1 Access 2002数据库简介
    Access数据库中7个数据库对象
    2.1 Access 2002数据库简介
    Access数据库中7个数据库对象
    表和关系
    若要存储数据,请针对跟踪的每一类信息创建一个表.若要在窗体,报表,或数据访问页中将多个表中的数据组织到一起,请定义表之间的关系.
    数据库表的例子
    2.1 Access 2002数据库简介
    Access数据库中7个数据库对象
    查询
    若要查找和检索仅满足指定条件的数据,包括来自多个表中的数据,可创建查询.查询也可以一次更新或删除多条记录,并对数据执行预定义的或自定义的计算.
    查询示例
    2.1 Access 2002数据库简介
    Access数据库中7个数据库对象
    窗体
    为便于直接在表中查看,输入和更改数据,可创建窗体.当打开窗体时,Microsoft Access 检索来自一个或多个表中的数据,并使用在"窗体向导"中选择的布局或用户在"设计"视图_("设计"视图:显示数据库对象(包括:表,查询,窗体,宏和数据访问页)的设计的窗口.在"设计"视图中,可以新建数据库对象和修改现有数据库对象的设计.)中创建的布局,在屏幕上显示数据.
    窗体示例
    2.1 Access 2002数据库简介
    Access数据库中7个数据库对象
    报表
    若要以某种打印方式分析数据或表示数据,请创建报表.例如,可以打印一个对数据进行分组并计算总计的报表,另一个报表则具有其他格式的数据以打印邮件标签.
    报表示例
    2.1 Access 2002数据库简介
    Access数据库中7个数据库对象
    数据访问页
    若要在 Internet 或 Internat 上使用数据,实现交互式的报表数据输入或数据分析,请使用数据访问页.Microsoft Access 会从一个或多个表中检索数据,并按照用户在"设计"视图中创建的或在"页向导"中选择的布局方式,在屏幕上显示这些数据.
    数据访问页示例
    2.1 Access 2002数据库简介
    Access数据库中7个数据库对象
    宏:将数据投入使用
    由一些操作组成的集合,创建这些操作可帮助您自动完成常规任务.通过使用宏组,可以同时执行多个任务.
    宏的定义
    由一个或多个操作_(操作:宏的基本组成部分;这一种自含式指令,可以与其他操作相结合来自动执行任务.在其他宏语言中有时称为命令.)组成的集合,其中每个操作都实现特定的功能,例如打开某个窗体或打印某个报表.宏可以自动完成常规任务.例如,可设置某个宏,在用户单击某个命令按钮时运行该宏,以打印某个报表.
    2.1 Access 2002数据库简介
    Access数据库中7个数据库对象
    模块:自动完成常规任务并创建业务解决方案
    模块基本上由声明,语句和过程组成的集合,它们作为一个已命名的单元存储在一起,对 Microsoft Visual Basic_(Microsoft Visual Basic:Basic 的一种高级可视化编程版本.Visual Basic 由 Microsoft 开发,用于生成基于 Windows 的应用程序.) 代码进行组织.Microsoft Access 有两种类型的模块:标准模块_(标准模块:在该模块中,可以放置希望供整个数据库的其他过程使用的 Sub 和 Function 过程.)和类模块_(类模块:可以包含新对象的定义的模块.一个类的每个实例都新建一个对象.在模块中定义的过程成为该对象的属性和方法.类模块可以单独存在,也可以与窗体和报表一起存在.).
    模块的定义
    模块将 Visual Basic 声明和过程作为一个单元进行存储的集合
    2.1 Access 2002数据库简介
    三, Access 2002的功能
    Access 2002后来微软公司通过大量地改进,将Access的新版本功能变得更加强大.不管处理公司的客户订单数据;管理自己的个人通讯录;还是大量科研数据的记录和处理,人们都可以利用它来解决大量数据的管理工作.
    你也许要问,Access的功能这么强,那使用起来会不会很麻烦呢 这一点你可以放心,随着版本的升级,Access的使用也变得越来越容易.过去很繁琐的工作现在只需几个很简单的步骤就可以高质量地完成了.
    2.2 Access2002的功能(续)
    Access属于小型桌面数据库系统,用户可以通过它提供的大量的操作向导方便的对数据库进行管理,查询及各种报表打印.
    Access提供了功能较强的编程语言VBA(Visual basic for Applications),以及全面开放的对象类型库.
    Access操作环境与Windows操作环境非常相似,采用面向对象的方法将数据库系统中的各项功能对象化,将数据库管理的许多功能封装在各类对象的方法和属性中,通过对象的方法和属性来实现对数据库的管理和操作.
    2.2 Access2002的功能(续)
    Access2002在原有版本的基础上增加了数据访问页和数据库项目.
    通过创建数据访问页,可以将数据库管理系统移植到浏览器中,从而通过互联网对数据库进行管理和操作.
    通过创建数据库项目,用户可以将Access 2002作为SQL Server数据库的前端开发工具,访问,操作并管理后端SQL Server数据库,从而创建出客户机/服务器方式的数据库管理系统.
    2.2 Access2002的功能(续)
    Access2002增加了"数据透视表"和"数据透视图",利用它们可以方便的进行数据分析,建立数据透视表视图与数据投视图视图.
    Access2002可以通过XML标准来实现数据共享.
    Access2002种.可以通过"连接数据库向导"将表直接连接到SQL Server数据库中
    2.2 Access 2002的开发环境
    一,Access 2002的启动和退出
    二, Access 2002的主窗口
    三, Access 2002的数据库窗口
    2.3浏览Access 2002
    一,浏览分析"罗斯文"商贸数据库
    二,分析Access数据库的结构
    2.4习题和上机操作
    P20
    谢谢大家!
    第三章创建Access数据库
    3.1设计数据库
    3.2创建数据库的方法
    3.3习题
    3.1 关系数据库设计方法
    关系数据库中,数据表最基本的对象,表的
    好坏,直接关系到数据库的效率以及对数据库管
    理和维护,因此,开始建立数据库之前,用户须
    先对数据库中的数据表进行仔细的分析和设计.
    比如那些数据存放在一张表中,每个字段的名,
    字段属性的设计,一个数据库中包含几张表,与
    表之间的联系等
    数据库表的设计方法
    学分
    课程名称
    课程号
    课程
    班级
    姓名
    学号
    学生
    实体属性
    实体
    实例:学生选课系统
    实体之间联系:多对多
    初步设计关系表
    85
    4
    多媒体
    2145
    计用05(3)
    王五
    055048011
    80
    4
    数据库技术
    2304
    计用05(3)
    王五
    055048011
    76
    4
    多媒体
    2145
    计用05(2)
    张三
    055047006
    85
    4
    数据库技术
    2304
    计用05(2)
    张三
    055047006
    成绩
    学分
    课程名称
    课程编号
    班级
    姓名
    学号
    表3-1
    计用05(3)
    王五
    055048011
    计用05(2)
    张三
    055047006
    班级
    姓名
    学号
    4
    多媒体
    2145
    4
    数据库技术
    2304
    学分
    课程名称
    课程编号
    表3-1存在问题:表中数据大量冗余
    解决办法:将表3-1拆分,每一个表对应一个实体,如下:
    表3-2
    总结:
    1.关系数据库中,一般一个表描述一个实体
    2.多对多:增加一个关系表,表中存两个相关表的关键字字段.
    85
    2145
    055048011
    80
    2304
    055048011
    76
    2145
    055047006
    85
    2304
    055047006
    成绩
    课程号
    学号
    表3-3
    总结:
    1.关系数据库中,一般一个表描述一个实体
    2.多对多:增加一个关系表,表中存两个相关表的关键字字段.
    85
    2145
    055048011
    80
    2304
    055048011
    76
    2145
    055047006
    85
    2304
    055047006
    成绩
    课程号
    学号
    表3-3
    问题:需不需要在表3-3中加上姓名,课程
    名等字段名称
    答案:不需要,否则带来数据冗余,因为
    学号+课程号不会重复,而且它们分别唯
    一确定一个实体.
    要点:除了外关键字,避免
    在表间出现重复字段
    总结:
    用外部关键字保证相关联表之间的联系.
    一对多关系,在"多"的一边加上"一"那边的关键字字段.
    根据上面总结思考以下问题:
    如果现在学校限制学生在选课的过程中只能选择
    一门课程,则学生选课系统的关系模式从简单,
    减少数据冗余的角度考虑,可以有哪些变化呢
    不是还需要另外单独建立一个学生——课程的
    关系模式呢

    解决:
    不需要增加"学生——课程"关系表,
    本问题中,课程与学生的联系为"一对多"
    按照总结 2)可采取如下措施:
    成绩
    课程编号
    班级
    姓名
    学号
    学分
    课程名称
    课程编号
    关系数据库设计步骤,原则
    1. 需求分析
    信息需求
    处理需求
    安全性和完整性需求
    2. 确定需要的表
    一个实体对应一个表
    关系数据库设计步骤,原则
    3. 确定表中所需字段
    每个字段直接和表中的实体相关
    字段——实体型的属性
    以最小的逻辑单位存储信息
    表中的字段必须原始数据
    确定关键字字段
    关键字字段——实体中的码
    关系数据库设计步骤,原则
    4. 确定联系
    一对多:在"多"的一边加上"一"那边的关键字字段;
    多对多:添加一个关系表,表中存两个相关表的关键字字段;
    一对一:根据具体情况而定,或用一个表存储,或用两个表存储,两个表使用相同的关键字字段,也有可能两个表通过外关键字字段建立联系.
    5.设计求精
    3.2 创建数据库的方式
    利用数据库向导创建数据库
    不利用向导创建数据库
    3.2.1利用数据库向导创建数据库
    例3-1 创建"工时与账单"数据库
    启动Access 2002以后,将鼠标移动到工具栏上的新建图标单击左键,或通过"文件"\"新建"选项;打开新建文件窗口
    2)打开通用模板窗口;
    选择"工时与账单"图标,然后"确定"
    3)出现"文件新建数据库"窗口;
    选择路径输入文件名,单击"创建"按钮
    4)启动数据库向导:
    5)单击"下一步" ,进入下面窗口:
    6)选择数据库中相应的表,确定表中的字段,并确定是否添加可选字段,(可选字段为斜体)然后单击"下一步"
    7)确定屏幕的显示样式,然后"下一步"
    8)确定打印报表的样式,然后"下一步"
    9)确定数据库的标题,单击下一步:
    10)单击"完成",开始创建数据库.
    11)出现对话框,单击确定.
    12)输入注册信息,然后关闭窗口
    13)数据库对象建完后,系统会自动输入有关信息,输入完后关闭窗口.
    14)在主切换面板中,选择进入各个窗体,输入客户的相关信息后关闭窗口;
    15)回到数据库窗口用户可以查看数据库的对象(双击鼠标)
    3.2.2 不利用向导创建数据库
    例3-2 不利用向导创建"图书管理数据库"
    打开Access,选择"空数据库","下一步"
    在我们以后的章节中,将一直以图书管理
    数据库作为例子
    2)选择保存路径,输入数据库文件名"图书管理数据库",单击"创建".
    3.3习题
    操作题
    使用模板创建一个学生管理的数据库
    不使用模板创建一个空数据库
    thank you very much!
    第四章 建造Access
    4.1 Access数据库表概述
    一,表的组成
    字段
    字段的数据类型
    字段的属性
    字段的说明
    二,表的视图
    设计视图
    数据表视图
    数据透视表视图和数据透视图视图
    1. 字段
    字段名称要能够直接,清楚的反映信息内容
    字段命名规定(同样适合于控件和对象):
    长度不能超过64个西文字符(32个汉字);
    不能包含句号".",感叹号"!",重音符号和方括号"[ ]";
    不能以空格开头;
    不能包含控制字符(0~31的ASCII值);;
    最好确保字段名和Access中已有的属性和其他元素的名称不相同.
    2. 字段的数据类型
    合理选择字段的数据类型,可有效的提高数据库效率,并可避免一些错误的发生.
    例:2002年5月14日
    8
    日期或时间
    日期(Date/Time)
    货币值除外
    8
    用来算术计算的数值
    数字(Num)
    注释,说明
    65 536
    长文本或文本与数字的组合
    备注(Memo)
    地址,电话号码,学号
    255
    文本或数字与文本组合,或不需要计算的数字
    文本(Text)
    备注
    存储空间(字节)
    适用范围
    数据类型
    表4-1 字段的数据类型
    UNC,URL路径
    64 000
    用于超链接
    超链接(Hyperlink)
    例:Word,Excel文件
    1GB
    用于使用OLE协议在其它程序中创建的OLE对象
    OLE对象(OLEObject)
    /否(Yes/No)
    此类型字段不能更新
    4
    添加记录时,Access自动制定的唯一顺序号.
    自动编号(AutoNum)
    精确到小数点左边15位,小数点右边4位,禁止四舍入.
    8
    货币值
    货币(Currency)
    备注
    存储空间(字节)
    适用范围
    数据类型
    表4-1 字段的数据类型(续)
    表4-1 字段的数据类型(续)
    在数据类型列表中选择此选项,将会启动向导进行定义,严格说不是一种数据类型.
    与对应于查阅子段的主键大小相同的存储空间
    一般为4字节
    用于创建这样的字段,它允许用户使用组合框来选择来自其他表或来自值列表的值
    查阅向导(Lookup Wizard)
    3. 字段的属性
    字段的属性指字段的大小,外观和其他的一些能够说明字段所表示的信息和数据类型的描述
    Access为大多数属性提供了默认属性设置,也可以改变默认设置或自行设置.
    常用的简单属性有如下几种:
    字段大小
    可由用户设置此属性的数据类型有:文本型,数字型和自动编号型;
    文本型的字段大小属性可设置为1~255之间的任何整数,默认值为50;
    数字型字段大小属性的可选项有:字节,整型,长整型,单精度型,双精度型,同步复制ID和小数.默认值为长整型;
    3. 字段的属性(续)
    自动编号型大小属性可选择长整型和同步复制型,默认为长整型;
    索引
    具有此属性的数据类型为:文本型,数字型,货币型,日期/时间型;
    索引属性可有三个取值:无索引,有索引(有重复),有索引(无重复)
    格式
    除了OLE对象外,任何数据类型的字段都可设置格式;
    Access为自动编号,数字,货币,日期/时间,/否提供了预定义格式,可从列表中选择.
    3. 字段的属性(续)
    4)小数位数
    此属性要在格式设置完毕后定义才有效,提供了自动和1~15位的选项;
    只影响显示的小数位数,不影响保存的小数位数.
    默认值
    指定在添加新记录时自动输入的值;
    添加新记录时可接受默认值,也可键入新值覆盖它;
    字段有效性规则
    用来控制数据输入的有效性和正确性.
    4. 字段的说明
    字段说明指对每个字段一般有一个简短的说明性文字,用来说明这个字段所表示的具体信息,以及设计字段时的注释.
    此说明会在向该字段添加数据时出现在状态栏中(此项设置可选)
    字段属性示例 图4-1
    字段读者类型的属性
    返回
    二,表的视图
    视图Access数据库对象的外观表现形式,不同的视图具有不同的功能和作用.
    表有四种视图:
    设计视图
    数据表视图
    数据透视表视图
    数据透视图视图
    1. 设计视图
    表的设计视图用于设计表的结构.
    在设计视图中,既可以从头开始创建整个表,也可以添加,删除或自定义已有表中的字段.
    设计视图示例
    2. 数据表视图
    数据表视图以行列格式显示表,用于处理数据.
    在数据表视图中,可以添加,删除和修改数据
    "工作统计"的数据表视图 图4-2
    3. 数据透视表视图,数据透视图视图
    数据透视表视图和数据透视图视图用所选格式和计算方法,汇总大量数据的表或图,其作用以另一种格式查看数据.
    一般用于查询或窗体中.
    4.2.1 利用向导创建表
    例4-1 使用向导创建一个如下的地址信息表:
    操作步骤:
    创建一个空的数据库,命名为"地址信息"
    启动表向导
    单击"文件"菜单中的"地址信息.mdb",打开数据库.如图4-4所示,在对象栏中单击"表"
    图4-3
    按钮,然后双击"使用向导创建表",即可启动表向导.
    图4-4
    选择字段(图4-5)
    在"表向导"的第一个标签框中,选定建立一个"个人"表,然后在"示例表"中选择"地址"表;接着在"示例字段"中选择你想建立的表所包含的字段,通过双击该字段或单击按钮" ",将选中的字段添加到"新表中的字段"框中,已经添加的字段可以通过反向箭头按钮" " 删除,按钮" "" "将所有字段一次添加或一次删除
    修改字段名称(可选项)
    单击按钮"重命名字段"可将"新表中的字段"框中的字段进行改名.
    图4-5
    指定表的名称,设置主键
    单击图4-5中的"下一步"按钮,打开"表向导"对话框(图4-6),在"请指定表的名称"文本框中输入"个人地址信息".
    在"请确定是否用向导设置主健"单选按钮中,选择设置主键的方法,这里我们先选择",帮我设置一个主键",单击"下一步",进入 图4-6.
    选择向导创建完表之后的动作,其中:
    "修改表的设计":单击"完成"按钮后弹出所建表格的设计视图,以便进行修改.
    "直接向表中输入数据":单击"完成"后将弹出所创建表的数据表视图,以便输入数据.
    "利用向导创建的窗体向表中输入数据":单击"完成"后将弹出自动生成的窗体,通过窗体可以输入相应的数据.
    图4-6
    4.2.2 通过输入数据创建表
    通过"输入数据创建表"可以一次性完成表的创建和数据的输入,适合把记录在纸上的数据直接建成数据库的形式.
    例4-2 图书管理数据库包含如下"读者信息表",要求用"输入数据创建表"的方法创建完成
    图4-7
    操作步骤如下:
    打开数据表视图
    打开"图书管理数据库",选择"通过输入数据创建表"
    命名字段
    在空表的数据表视图中,双击空表的"字段1",将字段1命名为"读者ID",依次命名其它字段.
    输入数据
    在各字段中顺序输入数据.
    保存表,将表保存为"读者信息表"
    定义主键
    系统弹出"尚未定义主键"警告框,单击"",由系统自动定义一个主键.
    4.2.3 利用"设计器"自行设计表
    表的设计视图中,可以对表的结构进行修改,并能够自行设计表
    例4-3利用"设计器"为"图书管理数据库"创建一个如图4-8的"图书信息表"
    图4-8
    操作步骤:
    打开设计视图
    在数据库窗口中双击"使用设计器创建表"后,弹出表的设计视图.
    定义字段
    在"字段名称"列中输入字段名;
    单击"数据类型"右边的按钮,显示出所有数据类型的列表框,从中选择一种合适的.
    保存表
    4.2.4导入已有数据创建表
    可以导入和联接的数据源有:
    Microsoft Access, Microsoft Excel等.
    在导入或连接数据之前,必须创建或打开Access2002数据库,以包含导入或连接的表.
    在Access2002数据库中,导入的数据将用新表创建导入数据的一个副本,同时源表或源文件不会改变.
    例:在Excel中有如图所示的表,在图书管理数据库里,导入这个表.
    1.打开数据库,切换到当前的图书管理数据库:
    4.3表的关键字和记录
    一,定义关键字
    每个表都应该包含一个或一组这样的字段:这些字段表中所存储的每一条记录的唯一标识,该信息即称作表的主键.指定了表的主键之后,Access 将阻止在主键字段中输入重复值或 Null 值.
    1)系统自动定义关键字
    2)用户自定义关键字
    在"设计"视图中打开表.
    选择将要定义为主键的一个或多个字段. 若要选择一个字段,请单击所需字段的行选定器.
    若要选择多个字段,请按住 Ctrl 键,然后对每个所需字段单击其行选定器.
    单击工具栏上的"主键"
    3)删除关键字
    在"设计"视图中打开表.
    单击当前主键的行选定器,然后单击工具栏上的"主键"


    4.3表的关键字和记录
    例:
    4.3表的关键字和记录
    二,创建索引
    创建索引以快速查找和排列记录
    在"设计"视图中打开表.
    在窗口上部,单击要为其创建索引的字段.
    在窗口下部,在"索引"属性框中单击,然后单击"有(有重复)"或"有(无重复)".
    单击工具栏中的索引按钮
    在索引对话框中选择所需要的索引姓名,设置属性
    关闭索引对话框,保存修改
    4.3表的关键字和记录
    三,记录的编辑
    如何打开一个表
    我们已经会使用表向导建立表了.表虽然建立好了,但一个空白的表没有任何用处,我们必须在建立好的表中输入数据,并学习一些关于表的基本操作. 往表中添加数据之前要先打开它,前面已经学过如何打开一个数据库,首先启动Access,选择"打开已有文件",双击"图书管理数据库"打开它.在数据库窗口中单击"表"选项,可以看到在数据库右边的"创建方法和已有对象列表"列表框中.
    4.3表的关键字和记录
    要打开这个表有两种方法,一用鼠标双击这个选项,另一个方法先单击这个选项选中它,然后再单击数据库窗口上的"打开"按钮.打开这个表之后,我们就开始往里面输入数据.
    4.3表的关键字和记录
    如何在表中添加,修改和删除数据
    我们先在表中输入几个数. 在一个空表中输入数据时,只有第一行中可以输入.首先将鼠标移动到表上的字段和第一行交叉处的方格内,单击鼠标左键,方格内出现一个闪动的光标,表示可以在这个方格内输入数了.
    4.3表的关键字和记录
    如果输入时出现错误想改的话,只要按键盘上的方向键,将光标移动到要修改的值所在的方格,也可以直接用鼠标单击,选中方格内的数据,然后用键盘上的"DELETE"键将原来的值删掉,并输入正确的值就可以了.向表中输入数据一件很细致的工作,千万不能马虎大意.简单的表,数据比较少,出错了容易检查;如果一张表很大,而且字段类型又比较复杂的话,输入的值出现错误,查起来就会非常麻烦.而且要是没有检查出来,让错误的数据留在表中,可能会给工作造成非常严重的后果.
    4.4 建立表之间的关系
    表的规范化
    1)字段的唯一性:每个字段不可再分的数据项
    2)主关键字:每一个表都应该有一个关键字
    3)功能关系性:表中的其它字段与主关键字是否直接相关
    4)字段的独立性:字段之间不存在相依性,
    字段不存在相互依赖的例子如下:
    年龄
    出生年月
    姓名
    学号
    2. 表之间的关系
    此处的关系指两个表的共有字段之间的关联性,只有定义了关系,才使得查询,窗体,报表可以显示多个表的信息.
    关系通过匹配各个表中的关键字段的数据,对各表中的字段进行协调.
    4.4建立表之间的关系
    首先看一个例子:"一对一"关系,比如下面的两个表:某学校学生月副食补助和某学校学生月助学金



    4.4建立表之间的关系
    我们将这两个表中的数据进行汇总生成新的表:"某学校学生月实发金额汇总":
    由于姓名字段可能会出现重复的情况,所以只有通过不可能出现重复的值的字段"学号",才能将这两个表唯一地联系起来,保证"副食补贴"和"助学金"不至于错误地发放,这样"月副食补助表"中的一个学号就只对应"月助学金"中的一个学号,绝对不会弄错.这样两个表的关系很明显就是"一对一"了.
    一对多和多对多,前面已经讲过.不再重复.
    3. 关系的创建
    关系通过匹配字段的数据来建立,建立表之间的关系,必须满足下面的条件:
    (1)相关联的字段名称不一定相同,但字段类型必须相同;
    (2)相关联的字段若为数字型,二者还必须具有相同的"字段大小"属性设置;
    (3)特殊,自动编号型字段可以和数字型字段匹配,但必须二者具有相同的"字段大小"属性配置.
    创建关系的关键:对表之间的内在联系进行分析,确定联系模式,一般还应该确保每个表都有主关键字或唯一索引.
    遵循原则:
    (1)"一对多"关系,要求只有一个表的相关字段主关键字或唯一索引;("多"的一边加上"一"那边的关键字)
    (2)"一对一"关系,要求两个表的相关字段都主关键字或唯一索引;
    (3)"多对多"关系,通过使用第三个表来创建,第3个表至少包括两个部分(既可以字段也可以字段组),一部分来自A表的关键字或唯一索引字段,另一部分来自B表的关键字或唯一索引字段,还可以增加其它字段.
    例4-8
    在"图书管理数据库",建立各表之间的关系.
    分析:
    图书管理数据库中,四张表之间的关系
    规则:"多"的一边加上"一"那边的关键字
    关系窗口
    关系的创建步骤:
    关闭所有打开的表
    选择需要创建关系的表
    单击菜单栏"工具"/"关系",若还没有定义关系,则弹出"显示表"对话框,否则显示关系窗口.
    在"显示表"对话框的"表"选项卡中,单击需要创建关系的表名称,再单击"确定"(或双击表名称),弹出关系窗口.
    定义关系
    ① 在 "关系"窗口中,将要建立关系的字段从一个表中拖拽到相关表中的字段上,弹出"编辑关系"对话框.
    单击"新建"按钮,弹出"新建"对话框,从下拉列表"左表名称"中选择"读者权限表",并从"左列名称"中选择"读者类型"字段,同样选择右表名称"读者信息表",右列名称"读者类型", 单击"确定"回到"编辑关系" 对话框.
    "编辑关系"
    对话框
    "新建"对
    话框
    ② 选中"编辑关系"对话框中的"实施参照完整性"复选框,则将建立两个表之间的"一对多"的关系.
    ③ 如果用户想更改主表的记录时,系统自动更新相关表中的记录,就选择"级联更新相关字段"复选框.
    ④ 如果用户想删除主表的记录时,系统自动删除相关表的记录,则选择"级联删除相关字段".
    ⑤ 单击"创建",就建立了"读者权限表"和"读者信息表"的关系.
    ⑥ 重复①~⑤,依次定义各表之间的关系.
    保存关系
    删除关系
    关系的完整性规则
    实体完整性规则 若属性A基本关系R的主属性,则属性A不能取空值.
    实体完整性规则规定基本关系的所有主属性不能取空,而不仅主码整体不能取空.比如学生选课关系(学号,课程号,成绩)中,学号+课程号主码,则"学号""课程号"两个属性都不能取空.
    对整体完整性说明如下:,
    (1)实体完整性针对基本关系的.一个表通常对应现实世界的一个实体集.
    (2)现实世界的实体可区分的,即具有唯一标识
    (3)相应的,关系模型中,主码为唯一标识
    (4)主码不为空.如果有空值,则说明存在某个不可标识的实体,与(2)矛盾.
    关系的完整性规则
    参照关系,外码 设F基本关系R的一个或一组属性,但不是关系R的主码.如果F与基本关系S的主码Ks相对应,则称F基本关系R的外码,并称基本关系R为参照关系,基本关系S为被参照关系或目标关系.
    例:学生,课程,学生与课程之间的多对多联系由下面三个关系表示(下划线为主键)
    专业号
    性别
    姓名
    学号
    学分
    课程名
    课程号
    成绩
    课程号
    学号
    S学生关系
    S课程关系
    R选修关系
    上述三个关系之间存在着属性的引用:选修关系引用了学生关系的主码"学号"和课程关系的主码"课程号",而且,选修关系中的"学号"必须确实存在的学生的学号,即学生关系中有该学生的记录. "课程号"也必须确实存在的课程的课程号,即课程关系中有该课程的记录.
    选修关系中某些属性的取值需要参照其它关系的属性取值.
    上述三个关系中,"学号"学生关系的外码,学生关系为参照关系,选修关系为目标关系.
    注意
    目标关系的主码和参照关系的外码必须定义在同一个域上
    参照完整性规则 若属性(或属性组)F基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S不一定不同的关系),则对于R中每个元组在F上的值必须为:
    ★或者取空值( F的每个属性值均为空)
    ★或者等于S中某个元组的主码值
    例:
    专业号
    性别
    姓名
    学号
    专业名
    专业号
    学生关系
    专业关系
    学生关系中,"专业号"外码,它的取值必须为:
    空值:表示没有分配专业
    非空指:必须专业关系中"专业号"的值
    4.5 表的编辑与修改
    Access数据库允许通过设计视图对表的结构进行修改.表数据库的基础,对表结构的修改,会影响与之相关的查询,窗体和报表等其它对象,因此一定要慎重,提前备份.
    一, 修改表的结构
    修改表的设计:重命名字段,修改字段的数据类型
    编辑字段:插入/删除行,插入/删除列
    移动字段
    修改字段的查阅属性
    查阅属性创建查阅字段:指使用组合框或列表框代替文本框来显示和输入数据,这样可以防止输入无效的数据
    例4-10 将读者信息表中的性别改为查阅属性:
    设计视图中打开"读者信息表"选择要修改的字段"性别",然后单击属性框中"查阅"选项卡,在 "显示控件"栏中选择"列表框"
    在"行来源类型"中选择"值列表",若行中的信息来源于表或查询,可以选择"表/查询"
    根据行来源类型,在"行来源"中输入"男;女"(注意符号必须为英文符号)
    绑定列设置为1
    在列数栏中输入1,确定在列表框中显示一列
    选择是否要列出列的标题,还可以在列宽栏中设置列宽
    单击"保存"按钮
    例4-11用组合框显示借书信息表的图书条码,使它显示相应的图书名和作者名:
    二,修改表的显示
    改变字体,字号和颜色
    改变数据表的样式
    调整行和列的大小
    列的冻结和解冻
    列的隐藏
    插入子数据表
    显示子数据表
    二,修改表的显示
    改变字体,字号和颜色
    改变数据表的样式
    调整行和列的大小
    列的冻结和解冻
    列的隐藏
    插入子数据表
    各种数据类型的含义和使用方法
    在表的设计视图中,每一个字段都有设计类型,Access允许九种数据类型:文本,备注,数值,日期/时间,货币,自动编号,/否,OLE对象,超级链接,查阅向导.
    文本:这种类型允许最大255个字符或数字,Access默认的大小50个字符,而且系统只保存输入到字段中的字符,而不保存文本字段中未用位置上的空字符.可以设置"字段大小"属性控制可输入的最大字符长度.
    备注:这种类型用来保存长度较长的文本及数字,它允许字段能够存储长达64000个字符的内容.但Access不能对备注字段进行排序或索引,却可以对文本字段进行排序和索引.在备注字段中虽然可以搜索文本,但却不如在有索引的文本字段中搜索得快.

    各种数据类型的含义和使用方法
    数字:这种字段类型可以用来存储进行算术计算的数字数据,用户还可以设置"字段大小"属性定义一个特定的数字类型,任何指定为数字数据类型的字型可以设置成"字节","整数","长整数","单精度数","双精度数","同步复制ID","小数"五种类型.在Access中通常默认为"双精度数".
    日期/时间:这种类型用来存储日期,时间或日期时间一起的,每个日期/时间字段需要8个字节来存储空间.
    货币 这种类型数字数据类型的特殊类型,等价于具有双精度属性的数字字段类型.向货币字段输入数据时,不必键入人民币符号和千位处的逗号,Access会自动显示人民币符号和逗号,并添加两位小数到货币字段.当小数部分多于两位时,Access会对数据进行四舍五入.精确度为小数点左方15位数及右方4位数.
    各种数据类型的含义和使用方法
    自动编号:这种类型较为特殊,每次向表格添加新记录时,Access会自动插入唯一顺序或者随机编号,即在自动编号字段中指定某一数值.自动编号一旦被指定,就会永久地与记录连接.如果删除了表格中含有自动编号字段的一个记录后,Access并不会为表格自动编号字段重新编号.当添加某一记录时,Access不再使用已被删除的自动编号字段的数值,而重新按递增的规律重新赋值.
    各种数据类型的含义和使用方法
    /否:这种字段针对于某一字段中只包含两个不同的可选值而设立的字段,通过/否数据类型的格式特性,用户可以对/否字段进行选择.
    OLE对象:这个字段指字段允许单独地"链接"或"嵌入"OLE对象.添加数据到OLE对象字段时,可以链接或嵌入Access表中的OLE对象指在其他使用OLE协议程序创建的对象,例如WORD文档,EXCEL电子表格,图像,声音或其他二进制数据.OLE对象字段最大可为1GB,它主要受磁盘空间限制.

    各种数据类型的含义和使用方法
    超级链接:这个字段主要用来保存超级链接的
    包含作为超级链接地址的文本或以文本形式存储的字符与数字的组合.当单击一个超级链接时,WEB浏览器或Access将根据超级链接地址到达指定的目标.超级链接最多可包含三部分:一在字段或控件中显示的文本;二到文件或页面的路径;三在文件或页面中的地址.在这个字段或控件中插入超级链接地址最简单的方法就是在"插入"菜单中单击"超级链接"命令.
    查阅向导:这个字段类型为用户提供了一个建立字段内容的列表,可以在列表中选择所列内容作为添入字段的内容.
    补充一:怎样在数据表中输入图片,声音和影像
    要想在数据表中插入图片,声音和影像,首先要在设计视图中把需要输入这些数据的字段的数据类型定义为"OLE对象",然后在数据表视图中用鼠标右键单击该字段下的一个记录,在弹出的菜单中选择"插入对象",这时出现"插入对象"窗口,在窗口中选择要插入的对象的类型或要插入的对象的文件名,要插入图片就保持"新建"选栏被选,并在对象类型这个列表栏中选择一种图片格式;
    补充一:怎样在数据表中输入图片,声音和影像(续)
    如果要插入声音就在这个列表栏中选择"声音";如果要插入影像就在这个列表框中选择"影像剪辑",然后单击确定按钮.如果要在这个值中加入特定的一个图片,声音或影像文件,就需要在"插入对象"窗口中选择"由文件创建",并通过单击"浏览"按钮,在浏览窗口中找到需要放置的文件,双击将它选定.单击"确定"按钮退出"插入对象"窗口,这时表的相应位置就出现了要插入的文件的文件名,双击文件名,就可以看到或听到相应的文件了.
    补充二:在表中建立超级链接
    在表中想插入超级链接,需要将相应字段的字段类型定义为超级链接,然后在表的数据表视图中单击要建立超级链接的值将它选定,再单击鼠标右键,在弹出的菜单中选择"超级链接",并在弹出的更下一级菜单中选择单击"编辑超级链接"选项.这时弹出"插入超级链接"的窗口,在"请输入文件名称和WEB页名称"下面的方框中输入想要链接的文件名称和WEB页的名称.单击"确定"按钮就可以在表中建立一个超级链接了.这时用鼠标单击超级链接的名称系统就会调出INTERNET浏览器访问WEB页面了.
    作业
    P76 1 2 3
    The weekend is pleased
    第五章 Access查询
    5.1 查询概述
    选择查询 从一个或多个表中检索数据,并且在可以更新记录(带有一些限制条件)的数据表中显示结果.也可以使用选择查询对记录进行分组,并且对记录作总计,计数,平均以及其他类型总和的计算.
    参数查询 在执行时显示对话框提示用户输入信息(查询的条件).参数查询的创建只能通过设计视图或SQL视图完成.
    交叉表查询 显示来源于表中各个字段的总计值(合计,计数和平均),并将它们分组,一组列在数据表的左侧,一组列在数据表的上部.
    5.1.1查询类型:选择查询,参数查询,交叉表查询,操作查询和SQL查询
    操作查询 仅使用一个操作来更改许多记录的查询.共有4种类型:删除,更新,追加,生成表查询.用户根据对话框提示输入参数,并检索复合参数的记录或值.但只有在执行查询时,才按照查询检索到的记录操作表,一般用于大批量修改表中数据.
    SQL查询 SQL是结构化的查询语言,是关系数据库的标准的,主流的查询语言.SQL语言特点:
    ☆既是自含式语言,又是嵌入式语言,即可独立用 于联机交互,又可嵌入到其它高级语言中.
    ☆高度非过程化,用户只需指出"做什么",而不必指出"怎样做".
    ☆面向集合,对元组的集合进行操作.
    5.1.2查询的功能
    利用查询,可以完成以下功能:
    选择字段,用户可以在查询中选择自己感兴趣的字段,而无须关心其它字段
    选择记录,用户可以指定一个条件,只有符合条件的记录才会显示出来.
    排序记录,用户可以指定浏览记录的顺序
    完成计算,可以建立一个计算字段,保存计算结果.
    作为窗体或报表的数据来源.
    修改表中数据,采用查询可以一次次修改,删除,增加一组相关的记录.
    建立新表,通过生成表查询,可以根据查询结果新建一个表
    5.1.3 查询视图
    设计视图:可以设计除SQL之外的任何类型的查询,查询设计器
    数据表视图: 查询的数据浏览器
    SQL视图:SQL查询
    数据透视表视图和数据透视图视图:
    可以更改查询的版面,从而以不同的方式分析数据.
    5.2 创建查询
    在"数据库"窗口单击对象"查询"按钮,然后单击"新建"按钮,打开"新建查询" 对话框.
    在"新建查询"对话框中,选择"简单查询向导"列表框,然后单击"确定"打开"简单查询向导"对话框一.
    在"表/查询"列表框中选择新建查询所基于的源表或查询,在"可用字段"列表框中双击所需要的字段,将其添加到"选定的字段"中.设置完成后单击"下一步"进入"简单查询向导"二
    5.2.1用向导创建选择查询
    [例5-1]创建选择查询"图书基本信息"
    新建查询窗口
    简单查询向导对话框一
    简单查询向导对话框二
    两个选项:"明细查询"和"汇总查询"
    明细查询 :查询中显示每个字段的值;
    汇总查询:对查询中某个字段进行分析汇总.
    选择"汇总"选项,单击"汇总选项"按钮,弹出"汇总选项"对话框
    "汇总选项" 对话框
    选择完毕后,单击"下一步",弹出"简单查询向导"对话框三
    "简单查询向导"对话框三
    5.2.2 使用"设计视图"创建查询
    [例5-2] 在图书管理数据库中,建立一个"借书情况"查询.要求查询中包含:
    "读者信息表"中的"姓名","读者张号";
    "图书信息表"中的"书名","单价";
    "借书信息表"中的"借书时间".
    数据表视图如下:
    1 . 建立简单的选择查询
    在"图书管理"数据库窗口中点击"查询"对象,然后双击"在设计视图中创建查询",弹出查询设计视图,出现"显示表"对话框
    选择查询设计视图一
    添加表
    在"显示表"对话框中,依次双击所需要的表(或单击表名,然后单击"添加"按钮),选择完毕单击"关闭",出现选择查询设计视图二.
    选择字段
    在设计视图二下半部分的查询设计网格中,添加字段.
    (1)单击设计网格"字段"格中的" ",弹出下拉列表.
    (2)在下拉列表中选择"读者信息表.姓名"
    (3)同样选择其它字段
    保存查询
    上述方法也可以通过拖拽方法实现.
    选择查询设计视图二
    2.查询结果的排序
    Access允许用户对"文本","数字","日期时间"等类型的字段进行排序
    1. 单字段排序
    [例5-3] 建立选择查询"图书信息查询",将结果按照"单价"升序排列.数据表视图如下
    在查询的设计视图中建立"图书信息查询"如下:
    设置排序
    单击"单价"列的"排序"字段,从下拉列表中选择"升序"
    2.多字段排序
    对多个字段进行排序时,Access首先按照第一个字段排序,若第一个字段的值相同,再按第二个字段排序,因此,多字段排序应将排序主次字段按左右排列.
    多字段排序操作与单字段相同
    5.2.3 创建"查找重复项查询"
    根据"查找重复项"查询的结果,可以判断表中是否有重复的记录,或判定表中是否有记录共享相同的值.
    [例 5-5] 利用向导创建"重复项查询"查找"图书信息表"中重复的记录或字段.其结果数据图如下:
    选择"查询"对象,在数据库窗口中单击"新建"按钮打开"新建查询"对话框,然后单击"查找重复项查询向导",然后"确定"打开向导对话框一.
    查找重复项查询向导对话框一
    在对话框一中,选择要建立查询的表或查询.在此选择"图书信息表",单击"下一步"打开向导对话框二.
    查找重复项查询向导对话框二
    在对话框二中,选择要查找重复的字段,在此选择"图书类型",单击"下一步",弹出对话框三
    查找重复项查询向导对话框三
    在对话框三中选择重复字段之外的其它字段,此处我们选择"书名","作者","出版社","单价"四个字段名.单击"下一步"进入对话框四.
    查找重复项查询向导对话框四
    在对话框四中,输入"查找重复项"标题,选择"查看结果"或 "修改设计".单击"完成",创建完毕.
    5.2.4 创建"查找不匹配项"查询
    一对多关系的两个表中,对于"一"方的每一个记录,"多"方可以有多个记录与之对应,也可以没有任何记录与之对应,查找不匹配记录就是查找"一"方中的记录,这些记录在"多"方中没有记录与之对应.
    创建步骤:
    选择"查询"对象,在数据库窗口中,单击"新建"按钮,打开"新建查询"对话框;在"新建查询"对话框中,单击"查找不匹配项查询向导",然后单击"确定"按钮打开向导一.
    查找不匹配项向导一
    在对话框一中,单击包含查询结果的表或查询,即"一"方的表或查询.选择"图书信息表",然后单击"下一步"打开第二个对话框.
    查找不匹配项查询向导二
    在对话框二中,选择包含相关记录的表或查询,即"多"方的表或查询.此例选择"借书信息表",单击"下一步"打开向导三.
    查找不匹配项查询向导三
    4)在对话框三中选择两个表或查询中的共有信息,单击下一步
    对话框四
    5)在对话框四中选择最终查询结果所包含的字段,单击下一步
    对话框五
    6)在对话框五中选择查看结果按钮单击完成
    显示结果情况
    补充内容
    查询的数据表视图看起来很像上一课讲的表,但它们之间还是有很多差别的.
    在查询数据表中无法加入或删除列,而且不能修改查询字段的字段名.这是因为由查询所生成的数据值并不是真正存在的值,而是动态地从表对象中调来的,是表中数据的一个镜像.查询只是告诉Access需要什么样的数据,而Access就会从表中查出这些数据的值,并将它们反映到查询数据表中来罢了,也就是说这些值只是查询的结果.我们刚才选择目标字段就是告诉Access需要哪些表,哪些字段,而Access会把字段中的数据列成一个表反馈给我们.当然在查询中我们还可以运用各种表达式来对表中的数据进行运算生成新的查询字段.
    在查询的数据表中虽然不能插入列,但是可以移动列,移动的方法和上一课中在表中移动列的方法是相同的,而且在查询的数据表中也可以改变列宽和行高,还可以隐藏和冻结列.
    5.3对查询进行编辑
    在查询创建好之后,可以对原有的设计进
    行修改.包括在查询中:
    增加和删除字段.
    移动字段.
    修改查询需在查询设计器中进行.
    5.3.1查询中增加字段
    在"设计"视图中打开查询.
    要选择请执行此操作一个字段单击字段名.相邻字段块单击块中的第一个字段,按住 Shift,然后单击最后一个字段.非连续字段单击字段时,按住 Ctrl.全部字段双击字段列表的标题栏或单击星号 (*).
    从字段列表中将字段拖至设计网格中要插入这些字段的列.
    也可以不用拖动的方法,而是通过在字段列表中双击字段名来添加字段,或者直接从网格"字段"行的列表框中选择字段.
    5.3.1查询中删除字段
    在"设计"视图中打开查询.
    单击列选择器选定字段,然后按 Delete.
    注意_将字段从设计网格中删除后,只是将其从查询设计中删除,而不是从基础表中删除了字段及其数据.
    5.3.1查询中移动字段
    在"设计"视图中打开查询.
    请执行下列操作之一: 若要选择一列,请单击该列的列选择器.
    若要选择多个相邻列,请拖过相应的列选择器.
    再次单击选定字段中任何一个选择器,然后将字段拖到新位置.
    _选定的列
    _移动过程中鼠标指针变为矩形
    5.3.1在查询中修改字段的标题
    在"设计"视图中打开查询.
    将光标移动到所要修改的字段上.
    单击工具栏中属性按钮,弹出字符属性对话框.
    在字符属性对话框的常规选项卡中的标题栏中输入字段的标题.
    关闭字段属性对话框.
    5.3.1调整设计网格的列宽
    在"设计"视图中打开查询.
    在设计网格中,将鼠标移动到所需要调整列宽的字段的选择器的右边框线上,这时鼠标变成双箭头状.
    按下鼠标左键并左右拖动,将列调整到合适位置.
    单击工具栏中的保存按钮.
    5.3.2在选择查询中设置准则
    准则是指在查询中用来限制检索记录的条件表达式.
    往查询里添加选择准则,有两个问题应该考虑,
    首先是为哪个字段添加"准则",其次就是要在这个字段添加什么样的"准则".,
    关于表达式
    表达式_是许多 Microsoft Access 运算的基本组成部分.表达式是可以生成结果的符号的组合,这些符号包括标识符和值.
    5.3.2在选择查询中设置准则
    一,表达式中的元素
    一个表达式便是一个意向的声明.如果你想让某个操作在满足某个特定的条件之后发生,则表达式必须指定这个条件.例如,如果要在某个查询中选择包含Z IP字段值90000或者更高的记录,可以使用如下的表达式:ZIP>=90000
    操作符包括大家熟悉的算术符号+,-,*(乘),/(除),以及许多其他符号和缩写.有些操作符是特定于Access或者SQL的,例如Between,In,Is和Like操作符.

    5.3.2在选择查询中设置准则
    文字由你键入的值组成,例如12345或者ABCDE.文字常常被用来创建默认值以及与字段标识符一起,进行表字段和查询列中值的比较.
    标识符是Access中的对象的名字(例如表中的字段),可返回唯一的数字或者文本值.在表达式中,术语返回的意思是用标识符的当前值代替表达式中出现的名字.例如,字段名字标识符CompanyName在一个表达式中返回当前所选记录的CompanyName字段的值(一个公司的名字).
    5.3.2在选择查询中设置准则
    Access具有五个预定义的命名常数,同时也作为标识符来使用:True,False,Yes,No和Null.在Access VBA中创建的命名常数和变量也是标识符.
    函数在表达式中函数名字出现的位置返回一个值,例如日期和格式函数.与标识符不同,大多数函数需要提供用圆括号括起来的标识符或者值作为参数.当文字,标识符或者函数和操作符一起使用时,这些结合被叫做操作数.
    5.3.2在选择查询中设置准则
    二,操作符
    Access和VBA提供了六类可以用来创建表达式的操作符:
    算术操作符执行加,减,乘,除.
    赋值和比较操作符用于值的设置和值的比较.
    逻辑操作符处理的值只有两种:true(真)或者false(假).
    连接操作符用以合并字符串.

    5.3.2在选择查询中设置准则
    标识符操作符用以创建数据库对象的明确的名字,以便可以在不同的对象(例如表和查询中)使用相同的字段名称.
    其他操作符例如Like,Is,Between操作符,可以简化用查询选择记录时用到的表达式的创建.
    前四类操作符几乎在所有的程序设计语言中都是可用的.标识符操作符是Access所特有的;最后一类操作符只在可以基于结构化查询语言( SQL)或者专有查询语言创建查询的关系型数据库管理系统(RDBMS)中是可用的.
    5.3.2在选择查询中设置准则
    三,文字
    Access提供了三种类型的文字,可以使用操作符将它们连接起来,创建出所需的表达式.下面分别对这些文字类型进行描述:
    数字文字为一系列的数字,如果可行的话还可以包括算术符号和小数点.其实不需要在正数之前加上加号;Access将不出现减号的时候都假定为正值来处理.数字文字可以包含E或者e以及指数的符号来指示科学计数法中的指数,例如,- 1.23E-02.
    文本(或者字符串)文字可以包含任何可打印的字符,以及由Chr函数返回的不可打印字符.
    5.3.2在选择查询中设置准则
    Chr函数将根据指定的数字值从Windows使用的ANSI字符表(与ASCII表相似)中返回
    字符.
    日期/时间文字用#包围,例如表达式#1-Jan-80#或者#10:20:30#.如果程序检测到你在设计网格中输入的是一个符合Access标准"日期/时间"格式的日期或者时间,Access将为你添加#.
    5.3.2在选择查询中设置准则
    四,标识符
    标识符通常是一个对象的名字;数据库,表,字段,查询,窗体和报表都是Access中的对象.每个对象都具有一个能够唯一标识该对象的名字.有时候,为了标识一个子对象,标识符名字中还包含家族名称(对象类),这时将使用#符号或者句点(标识符操作符)进行分隔.标识符的家族名称在前,然后是分隔符,在分隔符之后为给定的名字.S QL使用句点作为对象的分隔符 .
    5.3.2在选择查询中设置准则
    五,函数
    函数向其名字返回值;函数在表达式中占据标识符的位置.在Access中使用的最多的一个函数便是Now,它可以根据计算机的内部时钟向其名字返回当前的日期和时间值.如果你在表的日期/时间字段键入Now作为其DefaultValue属性值,例如,当你切换到数据表视图(1999年3月15日上午9:0 0)中时,在该字段中将出现3/15/99 9:00.
    5.3.2在选择查询中设置准则
    Access和VBA定义了大约150多个函数.下面按其用途对这些函数进行分类:
    日期和时间函数用于操作字段中日期/时间值或者作为文字输入的日期/时间值.你可以用日期和时间函数提取日期部分(例如年或者月和日)和时间部分(例如小时和分钟).
    文本操作函数用于处理字符串.
    数据类型转换函数让你来指定数字字段中值的类型,而不是依赖于Access来挑选最为合适的数据类型.
    数学和三角函数函数执行超出标准Access算术操作符能力之外的数字值操作.例如,你可以使用简单的三角函数来计算三角形的边长(如果你知道一个边的长度和其内角的话).
    5.3.2在选择查询中设置准则
    "表达式生成器"由三部分组成,从上至下为:
    _表达式框___ 生成器的上方是一个表达式框,可在其中创建使用生成器的下方区域可以创建表达式的元素,然后将这些元素粘贴到表达式框中以形成表达式.也可以直接在表达式框中键入表达式的组成部分.
    _运算符按钮___ 常用运算符的按钮位于生成器的中部.如果单击某个运算符按钮,"表达式生成器"将在表达式框中的插入点位置插入相应的运算符.单击左下角框中的"运算符"文件夹和中部框中相应的运算符类别,可以得到表达式中所能使用的运算符的完整列表.右侧的框列出的是所选类别中的所有运算符.
    _表达式元素___ 生成器下方有三个框:
    5.3.2在选择查询中设置准则
    左侧的框包含文件夹,该文件夹列出了表,查询,窗体及报表等数据库对象,以及内置和用户定义的函数,常量_,运算符和常用表达式.
    中间的框列出左侧框中选定文件夹内特定的元素或特定的元素类别.例如,如果在左边的框中单击"内置函数",中间的框便列出 Microsoft Access 函数的类别.
    右侧的框列出了在左侧和中间框中选定元素的值.例如,如果在左侧的框中单击"内置函数",并在中间框中选定了一种函数类别,则右侧的框将列出选定类别中所有的内置函数.
    注释__将标识符_粘贴到表达式中时,"表达式生成器"只能粘贴在当前环境中必需的标识符部分.例如,如果从"客户"窗体的属性表_中打开"表达式生成器",然后在表达式中粘贴窗体 Visible 属性的标识符,则"表达式生成器"只粘贴属性名称:Visible.如果在窗体的环境以外使用这个表达式,则必须包含完整的标识符:Forms![客户].Visible.
    5.3.2在选择查询中设置准则
    例5-7建立查询"清华出版图书".
    查询准则为:图书信息表.出版社=清华大学出版社
    例5-8建立一个选择查询:借书查询,要求将最近960天内读者借书的记录表示出来.
    查询准则为:>Data()-960
    5.4高级查询
    除了前面介绍的基本查询功能外,还有高级的查询,下面分别介绍之:
    在查询中执行计算
    参数查询
    交叉表查询
    操作查询
    SQL查询
    5.4.1在查询中执行计算
    使用函数
    1 以设计视图方式新建或打开一个查询,按照前述过程在设计网格中添加查询所用的字段._
    ___ 2 单击工具栏中的【合计】按钮,在设计网格中出现【总计】栏._
    ___ 3 单击需要进行【总计】运算的字段所对应的【总计】单元格,打开下拉列表,单击选择适当的选项._
    ___ 4 单击工具栏上的【执行】按钮,执行查询,得到查询结果集._
    5.4.1在查询中执行计算
    5 单击【总计】栏的某一单元格,在单元格中会出现一个向下按钮,单击这个按钮会出现一个下拉列表,列表中有以下几个选项:
    ___ GroupBy: 这是默认值,用于定义要执行计算的组.这个字段中的记录将按值进行分组而不进行合计._
    __

    5.4.1在查询中执行计算
    Sum 计算每一分组中的字段值的总和.只适用于数字,日期/时间,货币和自动编号型字段._
    ___ Avg 计算每一分组中的字段的平均值,同样它也只适用于数字,日期/时间,货币和自动编号型字段.
    Min 计算每一分组中字段的最小值.适用于文本,数字,日期/时间,货币和自动编号型字段.对于文本型字段,将按照字符的ASCII码顺序进行比较.
    5.4.1在查询中执行计算
    _ _
    ___
    Max 计算每一分组中字段的最大值.适用的字段类型和对于文本型字段的计算方法和Min都相同._
    ___ Count 计算每一分组中字段值的计数,该字段中的值为Null(空值)时,将不计算在内.
    _ StPev 计算每一分组中的字段值的标准偏差值.只适用于数字,日期/时间,货币和自动编号型字段.
    5.4.1在查询中执行计算
    _
    ___ _
    ___ Var 计算每一分组中的字段值的方差值.只适用于数字,日期/时间,货币和自动编号型字段._
    ___ First 返回每一分组中该字段的第一个值._
    ___ Last 返回每一分组中该字段的最后一个值._
    ___ Expression 在字段中自定义计算公式,可以套用多个合计函数._
    ___ Where 与【准则】栏合用可以在分组前先筛选记录.
    5.4.1在查询中执行计算
    自定义计算
    使用自定义计算,可以用一个或多个字段的数据对每个记录执行数值,日期和文本计算.
    要点:创建新的计算字段,就是将表达式输入到查询设计网格中的空字段单元格中.
    5.2 参数查询
    参数查询是指如果要查找的特定值不是固定的,而是以参数的形式在每次执行查询时,由用户临时输入而得到.
    设计参数查询的操作步骤如下:
    ___ 1 以设计视图方式新建或打开一个查询,设置查询所用的字段._
    ___
    5.2 参数查询
    2 添加参数查询所使用的字段.如果使用了总计项,那么将该字段所对应的【总计】栏设置为【Where】._
    ___ 3 在需要输入参数的字段所对应的【准则】栏中输入一个带有方括号的文本,该文本将在参数查询对话框中显示出来._
    ___ 4 单击工具栏上的【执行】按钮,会弹出【参数查询】对话框,在文本框中键入查询参数,单击【确定】按钮,查询结果集就将显示出来.
    例 5-10

    5.4.3 交叉表查询
    _ 交叉表查询一般创建在已经存在的表或查询上,用于对表中的数据进行统计和分析.
    1 以设计视图方式新建一个查询,添加查询所用的表/查询._
    ___ 2 单击工具栏中的【查询类型】按钮,然后在下拉列表中选择【交叉表查询】选项.则设计网格中的【显示】栏变成为【交叉表】栏._
    ___ 3 添加所需的字段并为每个字段设置【交叉表】栏.单击【交叉表】栏的任一单元格,单击其右端的下拉按钮,弹出的列表中有四个选项:行标题,列标题,值,不显示.这四个选项的含义如下:
    5.4.3 交叉表查询
    行标题: 设置为【行标题】的字段中的数据将作为交叉表的行标题,在所对应的【总计】栏一般设置为【Group By】.一个交叉表查询中可以有多个行标题,但不能超过三个.
    ___ 列标题: 设置为【列标题】的字段中的值将作为交叉表的列标题.在所对应的【总计】栏一般设置为【Group By】.一个交叉表查询中只能有一个字段作为【列标题】.
    ___
    5.4.3 交叉表查询
    值: 设置为【值】的字段是交叉表中行列标题相交单元格内的显示内容.在所对应的【总计】栏一般设置为【Expression】.在一个交叉表查询中只能有一个字段作为【值】.
    ___ 不显示: 设置为【不显示】的字段内容将不会出现在交叉表查询结果集中.这些字段可以作为查询的筛选条件,该字段所对应的【总计】栏一般设置为【Where】.在一个交叉表查询中可以有多个字段设置为【不显示】._
    ___ 4 单击工具栏上的【执行】按钮,执行查询,得到查询结果集.
    例5-11 P106

    5.4.4操作查询
    前面所介绍的几种查询方式都是选择查询,不改变数据库中各个表内原有的数据.
    而操作查询可以对数据表中原有的数据内容
    进行编辑,它以选择查询为基础,对符合选
    择条件的数据进行成批修改以简化维护数据
    库的工作.
    5.4.4操作查询
    1 生成表查询
    生成表查询可以用一个或多个数据表中已有的全部或部分数据来创建新表.
    利用生成表查询建立一个新表的操作步骤如下:
    1)以设计视图方式新建一个查询,并在查询中包含生成新表所需的表或查询._
    ___ 2)单击工具栏中的【查询类型】按钮,然后在下拉列表中选择【生成表查询】选项.弹出【生成表查询】对话框.
    5.4.4操作查询
    3)在【表名称】文本框中输入生成新表的名称,如果该表的名称与已有的表同名,那么新表将替换旧表._
    ___ 4)如果生成的新表放在当前数据库中那么选择【当前数据库】单选按钮;否则选择【另一数据 据库】单选按钮,然后在【文件名】文本框中输入放入新表的数据库的文件名.然后单击【确定】按钮._
    __
    5.4.4操作查询
    _ 5)将新表中所用的字段从字段列表中拖放到设计网格中.如果需要的话,可以在【准则】栏内的对应位置内输入添加记录的准则._
    ___ 6)单击工具栏上的【视图】按钮,可以预览将要生成的新表._
    ___ 7)单击工具栏上的【执行】按钮,进行生成表操作.
    例5-12 P109
    5.4.4操作查询
    2. 删除查询
    利用删除查询,可以从一个或多个数据表中删除符合查询条件的整个记录.
    使用删除查询的操作步骤如下:
    ___ 1)以设计视图方式新建一个查询,添加查询所用的表.添加所需的字段并设置被删除记录应符合的查询条件.
    5.4.4操作查询
    2)单击工具栏中的【查询类型】按钮,然后在下拉列表中选择【删除查询】选项.则设计网格中的【显示】栏变成为【删除】栏.将要删除记录的表内字段列表的"*"拖放至设计网格【字段】单元格内,然后将鼠标移开,则该字段的【删除】栏自动变为【From】.
    5.4.4操作查询
    3)单击工具栏中的【数据视图】按钮就可以看到将要被删除的记录组成的结果集._
    ___ 4)单击工具栏上的【执行】按钮执行删除操作.
    例 5-13 P111
    5.4.4操作查询
    3.追加查询
    追加查询可以在一个或多个表的尾部添加记录.追加查询可以从另一个数据表中读取数据记录并向该表内添加记录.
    使用追加查询的操作步骤如下:
    1)以设计视图方式新建一个查询,在此查询中要包含将要追加的记录的表._
    单击工具栏中的【查询类型】按钮,然后在下拉列表中选择【追加查询】选项.弹出【追加】对话框._
    __
    5.4.4操作查询
    2)如果要追加记录的表在同一数据库内,那么选择【当前数据库】单选按钮,否则选择【另一数据库】单选按钮,然后在【文件名】文本框中输入数据库文件名.
    单击【表名称】文本框右端的下拉按钮,从下拉列表中选择添加记录的表,然后单击【确定】按钮._
    ___
    5.4.4操作查询
    3)在查询设计视图中将要追加的字段以及用来设定准则的字段拖入设计网格中并设置准则._
    ___ 4)单击工具栏上的【视图】按钮可以预览将要添加的记录._
    ___ 5)单击工具栏上的【执行】按钮进行追加查询操作
    例 5-14 P112
    5.4.4操作查询
    4.更新查询
    更新查询可以对一个或多个表中符合查询条件的数据作全局的更改.
    使用更新查询的操作步骤如下:
    ___ 1)以设计视图方式新建一个查询,添加查询所用的表/查询.添加所需的字段并设置要更新记录应符合的查询条件.
    5.4.4操作查询
    _ 2)单击工具栏中的【查询类型】按钮,然后在下拉列表中选择【更新查询】选项.此时设计网格中的【显示】栏变成为【更新到】栏._
    ___ 3)在需要更改的字段所对应的【更新到】栏内输入更新表达式._
    ___ 4)单击工具栏上的【视图】按钮可以预览更新的结果._
    ___ 5)单击工具栏上的【执行】按钮执行删除操作.
    例5-15 P114
    5.4.5 SQL查询
    SQL特定查询
    联合查询 用于将两个或多个表或查询的字段组合为查询结果的一个字段.
    传递查询 直接将命令发送到ODBC数据库,如SQL Server,使用服务器能接受的命令.例,可以使用传递查询来检索记录或更改数据.使用传递查询,不必联接到服务器上的表据可直接使用相应的表.
    数据定义查询 用于创建或更改数据库对象,用SQL数据定义查询可以创建,删除或更改表,或者在当前数据库中间索引.
    SQL查询的步骤
    首先要建立一个新的查询,然后单击"视图"菜单,选择"SQL视图"命令,这样在屏幕上就出现了一个文本框,用来书写SQL语句.将用到的SQL语句输入完毕后,再单击"视图"菜单,选择"数据表视图"命令 .
    创建表时,一般需要回答以下问题:
    表名是什么
    各列(字段)的名称是什么
    此表包括什么类型的数据等等
    创建表的基本语法如下:
    CREATE TABEL table_name
    (filed1 datatype,
    field2 datatype,
    ………………
    field5 datatype)
    其中datatype可以用以下的类型符定义:
    TEXT:文本型
    MONEY:货币型
    INTEGER:长整型
    DATE:日期型
    FLOAT:双精度型
    LOGICAL:是否型
    MEMO:备注型
    GENERAL:OLE型
    1,用SQL创建表
    例1 创建SQL查询(查询名:SQL查询1),创建表(xjb)构造的xjb的结构如下表
    2
    8
    长度
    备注
    长整型
    是/否
    日期/时间
    文本
    文本
    长整型
    字段类型
    jl
    rxcj
    dyf
    csrq
    xb
    xm
    xh
    字段名
    2,用SQL修改表结构
    在表创建以后,还可以使用ALTER TABEL命令来修改它.即可以增加新字段,修改已有的字段或把表中已有的字段删除掉
    SQL增加字段的语句格式为:
    ALTER TABLE table_name
    ADD field6 datatype
    SQL修改字段的语句格式为:
    ALTER TABLE table_name
    ALTER field2 datatye
    SQL删除字段的语句格式为:
    ALTER TABLE table_name
    DROP field1 datatype
    例2 创建SQL查询(SQL查询2),修改(xjb)中的xh字段的类型,从长整型(INTEGER)改为文本型(TEXT),长度为5.
    例3 创建SQL查询(SQL查询3),在表(xjb)中增加jg字段,其类型为文本,长度为30.
    例4 创建SQL查询(SQL查询4),删除表(xjb)中的jg字段.
    3,用SQL语句维护数据
    用SQL语句不仅可以对表结构进行定义,还可以对表中的数据进行插入,更新,删除等操作,用以维护数据.
    SQL插入记录的语句格式为:
    INSERT INTO table_name(field1,field2,field3……)
    VALUES (value1,value2,value3……)
    SQL更新数据的语句格式为:
    UPDATE table_name SET field1=value1,field2=value2
    WHERE condition
    SQL删除数据的语句格式为:
    DELETE FROM table_name WHERE condition
    例5 创建SQL查询(SQL查询5),给表xjb插入新的记录("99301","王洁","男",#82-5-1#,true,610)
    例6 创建SQL查询(SQL查询6),更新xjb中xm字段的值,条件是xb为"女"的,xm后加"OK".
    例7 创建SQL查询(SQL查询7),删除表xjb中xm为"王洁"的记录.
    更新,追加,删除查询练习:
    (修改UPDATE,添加INSERT,删除DELETE数据)
    练习1:将cjb1中的qzcj都降10分
    练习2:删除xjb中rxcj>600的纪录
    练习3:向xjb中添加以下一条新纪录
    99209 王玉 男 1980-5-10 否 603 原籍吉林
    练习4:将xjb1中rxcj>600的纪录添加到xjb中
    1,UPDATE cjb1
    SET qzcj = [qzcj]-10;
    2,DELETE xjb.*
    FROM xjb
    WHERE rxcj>600;
    3,INSERT INTO xjb
    VALUES ('99209','王玉','男',#1980-5-10#, false, 603, '原籍吉林');
    4,INSERT INTO xjb
    SELECT xjb1.*
    FROM xjb1
    WHERE xjb1.rxcj>600;
    答案:
    4,用SQL语句创建选择查询
    SQL语句主要功能就是创建选择查询,使用SQL语句创建简单的选择查询使用的是SELECT语句.大多数SELECT语句包括以下几个成分来描述返回什么样的结果集:
    要查询哪些表,以及表之间的逻辑关系.
    结果集中包含哪些列,即要从表中取出哪些列的数据.
    以何种条件从表中取出数据,即表中的行被包含在结果集中的条件.
    结果集中的行的排列顺序.
    SELECT语句的完整语法
    SELECT [ALL|DISTINCT] select_list
    FROM table_name
    [WHERE search_condition]
    [GROUP BY group_by_expression]
    [ORDER BY order_expression[ASC][DESC]]
    例8 创建选择查询(选择查询1),选择xjb中的xh,xm,xb,rxcj字段
    例9 创建选择查询(选择查询2),选择xjb中xb为"男"的部分字段
    例10 创建选择查询(选择查询3),选择表xjb中xb为"男"的部分字段并以rxcj字段排序(降序)
    用SQL语句创建选择查询练习
    练习1:查询xjb1中男同学的情况
    练习2:查询xjb1中入学成绩在500以下或650以上的同学
    练习3:查询xjb1中出生日期是1981年的同学
    1,SELECT xjb.*
    FROM xjb
    WHERE xb="男";
    答案:
    2,SELECT xjb.*
    FROM xjb
    WHERE rxcj>=650 Or rxcj<=500;
    3,SELECT xjb.*
    FROM xjb
    WHERE csrq Between #1/1/1981# And #12/31/1981#;
    5,创建多表查询
    使用SQL语句创建多表选择查询,就是对表进行"连接"操作,要求多个数据表间要有相互关联的字段.
    语句格式:
    SELECT select_list
    FROM table1 INNER JOIN table2
    ON table1.Column1=table2.column2
    等价于
    SELECT select_list
    FROM table1 ,table2
    WHERE table1.Column1=table2.column2
    例11 创建选择查询(选择查询4),选择xjb1的部分字段,并与cjb1以xh相互关联的字段进行联合查询.要求显示xjb1的xh,xm,xb和cjb1中的qmcj四个字段.
    例12 创建选择查询(选择查询5),将三表(xjb1,cjb1,kcb1)相连,查询xh,xm,kcm,qzcj.
    可以使用SQL语句创建统计分析查询(即汇总查询),就是对表数据根据给定的条件,"筛选"出满足条件的多条记录,进行统计分析,或分组进行计算的操作
    语法:
    SELECT select_list
    FROM table_name
    WHERE search_condition
    GROUP BY group_by_expression
    HAVING search_condition
    HAVING子句用来向使用GROUP BY子句的查询中添加数据过滤准则.
    6,创建统计分析查询
    例13 创建选择查询(选择查询6),查询结果是以xjb1中的xb分组,统计不同性别的rxcj的平均值.
    例14 在cjb1中查看各课程qzcj总分
    SELECT cjb1.kch, Sum(cjb.qzcj) AS 总分
    FROM cjb1
    GROUP BY cjb1.kch;
    例15 在cjb1中查询kch=02的qmcj之和
    SELECT cjb1.kch, Sum(cjb1.qmcj) AS 总分
    FROM cjb1
    GROUP BY cjb1.kch
    HAVING kch="02";
    SELECT 学生.姓名, 学生.入学成绩
    FROM 学生;
    2,查询"学生"表中所有的列
    练习一:写出各题要求的SQL语句
    1, 从学生信息数据库中的"学生"表中查询所有学生的姓名及入学成绩
    SELECT 学生.*
    FROM 学生;
    3,对"学生成绩"表执行总分查询,总分=期中成绩+期末成绩
    SELECT 学生成绩.学号, 学生成绩.期中成绩, 学生成绩.期末成绩, [期中成绩]+[期末成绩] AS 总分
    FROM 学生成绩;
    补充
    练习二:以下SQL语句可以实现什么样的功能
    1,SELECT 图书表.书名, 图书表.作者, 图书表.出版社, 图书表.印数
    FROM 图书表
    WHERE (((图书表.作者)="劳伦斯" Or (图书表.作者)="李四光"));
    2,SELECT 职工情况表.*, [基本工资]+[补贴] AS 应发工资, [应发工资]-[扣发] AS 实发工资
    FROM 职工情况表;
    3,SELECT 职工情况表.*
    FROM 职工情况表
    WHERE (((职工情况表.职称)=[输入待查职称名]));
    作业
    1.填空题
    3.操作题
    第六章:
    使用窗体
    6.1 窗体概述
    通过窗体,可以避免直接对表或查询进行操作;
    窗体是系统与用户交互的界面;
    Access 使用数据库引擎机制,自动将数据库捆绑于窗体,使得前台对窗体的操作与后台对数据的维护同步.
    6.1.1 窗体中的控件
    控件是组成窗体的最基本元素
    Access2002种提供六类控件:
    用于输入,显示和筛选数据的控件;
    包括:复选框,组合框,命令按钮,下拉列表框,标签,列表框,选项按钮,选项组,子窗体,子报表,文本框,切换按钮等;
    用于分析数据的控件;
    包括:Office图表,Office数据透视表和Office电子表格;
    链接到Web页的控件;
    包括:超级连接和绑定超级连接;
    图形化和具有动画效果的文本控件;
    包括:热点图像,图像控件,未绑定对象框或绑定对象框的滚动文字;
    自定义控件;
    包括:ActiveX控件(活动控件);
    用于组织数据的控件;
    包括:展开,直线,分页符,记录浏览,矩形和选项卡;
    6.1.2 窗体的结构
    窗体由5部分组成,每个部分称为一个节
    窗体页眉节
    主要用来显示窗体标题等
    页面页眉节
    与窗体页眉类似,在打印页的顶部显示
    主体节
    用于显示记录,由各种控件组成
    页面页脚节
    显示日期,页码等信息,打印页底部
    窗体页脚节
    显示对于每条记录都相同的信息,出现在窗体的底部或最后一个打印页的最后
    6.1.3 窗体的类型
    单页窗体
    显示表或查询中每一个记录的完整信息
    多页窗体
    每一页只显示一个记录的部分信息
    连续窗体
    同一屏中显示多个记录
    窗体的类型(续)
    弹出式窗体
    用来显示信息或提示用户输入数据,分为独占式和非独占式两种
    含子窗体的窗体
    用来显示来自多个表中的,具有一对多关系的数据
    6.1.4窗体的视图
    设计视图
    窗体视图
    数据表视图
    数据透视表视图
    数据透视图视图
    6.2创建窗体
    6.2.1使用向导创建窗体
    1.创建基于单个表的窗体
    例6.1 在"图书管理"数据库中,用向导创建
    "借书情况"窗体
    在"图书管理"数据库中,单击"窗体"对象
    双击"使用向导创建窗体",在向导对话框一中,选择"借书情况查询"
    将所有字段选进窗体,单击下一步
    窗体向导对话框一
    在下图中选择"纵栏表"单击下一步
    在下图对话框中选择一个列表项,单击下一步
    在下图对话框中输入窗体名称,单击完成
    2.创建基于多个表的窗体
    例6.2 在"图书管理"数据库中,用向导创
    建"个人借书清单"窗体
    具体操作步骤
    在"图书管理"数据库窗口中,单击对象栏上的"窗体"按钮
    双击"使用向导创建窗体"按钮,探出"窗体向导"对话框一.
    在上面图中,将以下字段选入,"读者信息表"中:姓名,读者账号,性别,读者类型,单位;"图书信息表":图书条码,图书类型,书名,作者,出版社,单价;借书信息表:借书时间.单击"下一步"
    窗体向导对话框一
    在上图中选择"通过读者信息表"查看数据,选中"带有子窗体的窗体"复选框,单击"下一步"
    窗体向导对话框二
    在上图中选取"表格"列表项,将子窗体布局为表格,单击"下一步"
    按照下面两个向导,最后完成窗体创建
    窗体向导对话框三
    注意:创建带有子窗体的窗体,主窗体所基于的表与子窗体所基于的表一般要求是一对多的关系,即主窗体是一,子窗体是多
    3.使用"自动窗体"创建窗体
    可以使用"自动窗体"功能创建窗体
    首先选择对象栏中"表"或"查询",然后选择创建窗体所基于的对象,最后选择工具栏中"自动窗体"按钮
    6.2.2使用"设计视图"创建窗体
    任何类型的窗体都可以通过设计视图实现
    通过设计视图,用户可以自由控制每一部分的大小,位置以及采取什么方式显示等
    [例6-3]在"图书管理数据库"中,用设计视图
    创建"图书信息"窗体.
    如下图所示
    窗体"图书信息"的窗体视图
    操作步骤如下:
    打开"图书管理"数据库
    单击对象栏的"窗体"按钮,单击"新建".
    在新建窗体对话框中选择"设计视图",并选择需要创建窗体的表或查询.这里选择"图书信息表",单击"确定",打开设计视图,如下图所示
    在上图中,单击所要选择的字段——图书条码,书名,作者,出版社,图书类型,出版时间,单价,是否借出,将它们拖入到窗体适当的位置,如下图
    观察设计效果,在"视图"中选择"窗体视图,观察设计效果
    修改设计:单击工具栏上"设计视图"按钮,切换回设计视图,进行修改
    6.2.3使用图表向导创建图表窗体
    实际应用中,有时需要将一些数据及其之间的关系有图表加以描述.
    [例6-4]在"图书管理数据库"中,创建基于查询"02年借书情况"的图表,结果如下:
    操作步骤如下:
    首先创建"02年借书情况"查询,查询字段包括:借书信息表:读者账号,读者姓名,借书时间,罚款金额;图书信息表:书名,单价.
    查询条件:所有02年借书的记录
    创建图表窗体:
    打开"窗体"对象,单击"新建"按钮
    在"新建窗体对话框"中选择"图表向导,在请选择该对象数据的来源表或查询下拉列表中选择"02年借书情况"查询,"确定"
    在图表向导中选择用于图表的字段,这里选:读者姓名,书名,单价,借书时间和罚款金额,单击"下一步"
    新建窗体对话框
    选择要采取的图表类型——"柱形图图表"
    在下面对话框中设置各字段在图表中的显示方式,在此以"读者姓名"为横坐标,"求和单价"为纵坐标,"书名"为系列.
    双击数据框"求和单价",打开"汇总"对话框,设置对数据的汇总方式
    Access2002所支持的汇总方式有:None(直接利用数据字段);Sum(求和);Min(求最小值);Max(求最大值);Count(计数),此例中选择默认汇总类型Sum
    指定图表的标题为:02年借书情况图表窗体,单击完成
    6.2.4创建数据透视表窗体
    Access2002的窗体通过OLE技术可以使用excel的数据透视表,可以通过"数据透视表向导"来创建数据透视表.
    [例6-5] 建立"图书信息表"的数据透视表窗体
    创建过程与Excel表格中创建数据透视表相同
    6.3编辑窗体
    6.3.1控件的编辑
    选择控件
    调整控件
    对齐控件
    设置控件的颜色,字体,边框和特殊效果
    6.3.2记录的编辑
    定位记录
    要修改窗体所基于的表或查询中的数据,首先要定位到相应的记录(找到相应的记录),然后再对数据进行修改.
    在窗体视图中,窗体的左下角有一个记录定位工具
    利用该工具可以实现对记录的定位,并可以添加新记录以及修改已有的记录.
    添加记录和修改记录
    添加记录可以单击窗体定位工具的空白记录按钮,在空白页中,在各个控件中输入相应的记录;修改记录就是在已有的记录中,通过相应的控件,对记录的有关字段值进行修改.
    单击前一条记录,后一条记录或空白记录都将引起自动保存,或单击工具栏上的保存按钮
    查找和替换记录
    一般情况下,我们只知道记录中相关字段的取值,而不会知道记录的记录号,因此需要根据字段值进行查找和替换.
    操作步骤如下:
    打开窗体"图书信息窗体",单击要查找的字段,比如"书名"
    选择"编辑/查找"选项,打开查找和替换对话框,如下图所示
    在上图查找内容文本框中输入要查找的内容,查找范围为书名,匹配列表框选择整个字段,搜索列表框选择搜索方向为全部,如果要区分大小写或严格区分格式,则将下面两个复选框选中
    6.4高级窗体设计
    我们一般通过设计视图来设计窗体,设计窗体的中心任务就是设计窗体控件.
    窗体时有一个个控件组成的,控件是窗体显示数据,执行操作和修饰版面的对象,窗体中的控件对象都放在下图所示的工具箱内.
    6.4.1工具箱的组成
    选择对象
    控件向导
    文本框
    标签
    选项组
    切换按钮
    选项按钮
    复选框
    组合框
    列表框
    命令按钮
    图像
    结合对象框
    非结合对象框
    分页符
    选项卡
    子窗体报表
    直线
    矩形
    其它控件
    6.4.2窗体控件的功能
    选择对象 选取控件,节或窗体
    控件向导 可以打开,关闭控件向导
    标签 显示提示性的静态文本
    文本框 显示,输入,编辑数据
    选项组 显示一组复选框,选项按钮
    切换按钮,选项按钮,复选框 与具有"是否"属性的数据结合
    组合框 结合了文本框与列表框的特点,可以输入数据,也可在列表框中选择
    列表框 显示可以滚动的数值列表
    命令按钮 用来在窗体中执行一些操作
    图像 在窗体中显示静态图像
    结合对象框 在窗体中显示OLE对象,但只显示保存在数据库中的OLE对象
    非结合对象框 在窗体中显示OLE对象
    分页符 在窗体中开始一个新的屏幕,或在打印窗体时开始一个新页
    选项卡 在一个窗体中显示多页信息
    子窗体/子报表 在现有窗体中再创建一个与主窗体相联系的子窗体,也可以将现有的窗体通过控件加入到另一窗体中
    直线 ,矩形 绘制直线和矩形
    其它控件 选择当前可用的控件
    6.4.3在窗体中创建控件
    创建标签
    [例6-6]创建标签——"图书管理数据库"
    在设计视图中打开[例6-2]创建的图书信息窗体;
    在工具箱中单击"标签"控件,在窗体中适当的位置拖出一个输入框,然后输入相应文本
    标签
    创建文本框
    A c c e s s使用的文本框类型有以下四种基
    本类型:
    单行文本框 通常绑定在窗体上的控件或者表或查询中的字段上.
    多行文本框 通常绑定在备注字段类型上,并且包含一个垂直滚动条,允许访问框之外的文本.
    计算文本框从以等号= (等号)开头的表达式获得其值,通常只有一行.如果在计算文本框的表达式中包含一个字段值,例如[ 身高 ],该文本框便被绑定到这个字段上.否则计算文本框便是未绑定的.计算文本框中的值不能进行编辑.
    未绑定文本框可以用来为Access VBA过程提供值—例如限定日期.没有包含计算表达式的未绑定文本框可以被编辑.
    如上图所示的窗体中的控件,都是绑定文本框.
    创建未绑定文本框
    在窗体设计视图中打开已有的窗体或创建一个空窗体
    在工具箱中单击"文本框"按钮,在窗体中拖出任意大小的文本框
    在此创建的非绑定文本框,可以显示描述信息,或接受用户输入
    应用:设计一个窗体,要求显示xsda表中的学号,姓名,性别,身高,体重5个字段,并用文本框控件判断每个学生的体重是否超标(正常体重=身高-1.05m),分别用yes或no表示判断结果.
    操作步骤如下:
    ● 在窗体对象中选择新建/设计视图,并在表/查询下拉列表中选择xsda表,按确定按钮;
    ● 在字段列表中选择学号,姓名,性别,身高(cm),体重(kg)5个字段(同时按住Ctrl键选择);
    ● 将选中的字段拖放到窗体的合适位置;
    ● 在工具箱中选择文本框控件,在窗体的合适位置上拖放文本框;
    ● 修改标签名以明确文本框的内容,并在文本框中输入数字型表达式:=[身高]-105>选择查询中所有的字段.单击下一步
    二,利用向导创建报表(续)
    在报表向导对话框中,系统让用户选择显示数据的方式,在此选择系统默认的方式,单击下一步按钮.
    二,利用向导创建报表(续)
    在如图示报表向导对话框中,用户可以设定分组.方法是在左边框中先选借书时间,单击>按钮.单击分组选项,出现如图示分组间隔对话框,在分组间隔框中选择月,然后单击确定系统返回报表向导对话框,单击下一步按钮.
    二,利用向导创建报表(续)
    在此对话框中,可以设置排序字段的次序,最多可按4个字段对记录进行排序.此例中选择对借书时间和单价进行升序排序.单击下一步按钮.
    二,利用向导创建报表(续)
    在如图所示报表向导的对话框中,选择报表的布局和方向,并选择系统默认的选项.单击下一步
    二,利用向导创建报表(续)
    此时可以选择报表的样式.此例中选择组织样式,然后单击下一步按钮.
    二,利用向导创建报表(续)
    在弹出报表向导对话框中,输入标题借书情况,然后单击完成按钮.所创建的报表如下图所示.
    二,利用向导创建报表(续)
    利用报表向导创建借书情况报表结果如图
    三,利用设计视图设计报表
    利用自动创建报表和报表向导建立的报表,
    一般都会存在着与实际需要不相符的地方.为了设计出满足用户实际需要的报表,就要用到表的设计视图,修改或自行设计.
    在设计视图中修改报表.
    通常是利用前述方法建立简单的报表,然后再利用设计视图对其修改.
    例7-3 利用报表设计视图修改例7-2创建的报表借书情况,将标题显示完整,使所有的字段能在一行中显示.结果如图所示.
    三,利用设计视图设计报表(续)
    操作步骤如下
    1 打开报表
    在数据库窗口中,双
    击已建立的报表借书
    情况,打开该报表,
    单击工具栏中的视图
    按钮,切换到设计视
    图,如图所示
    三,利用设计视图设计报表(续)
    2修改报表的设计
    在报表页眉节中,单击控件借书情况,然后拖动控件的右边,调整其大小,使其显示完整,如图所示
    用同样的方法,调整其他控件的,以使所有字段能在一行中显示.
    将鼠标移至页面右边界,向左拖动,调整页面宽度,如图所示
    修改的结果如图所示.
    单击工具栏中的视图按钮,切换到打印预览状态,可预览报表,如图所示.
    需要说明的是,在上述的修改过程中可在设计视图和预览状态间反复切换,逐步观察全局性效果,直至满意为止.
    三,利用设计视图设计报表(续)
    三,利用设计视图设计报表(续)
    自行设计报表
    若想从无到有地建立报表,操作步骤如下:
    在数据库窗口中,在设计视图中创建报表,弹出空白的报表设计视图.
    单击工具栏中的属性按钮,在弹出的报表属性对话框的记录源一栏中,选择记录来源,即将空白报表与表或查询中的数据结合起来.如图所示
    利用工具箱中的工具进行报表设计,与创建窗体的方法类似.
    三,利用设计视图设计报表(续)
    四,创建图表报表
    在创建报表时,有时需要用图表的形式直观地描述数据,在ACCESS中,可以图表向导创建图表形式的报表.
    例7-4利用图表向导创建图表报表-单价,对清华大学出版社出版图书单价进行比较,结果如图所示
    四,创建图表报表(续)
    四,创建图表报表(续)
    操作步骤如下
    打开所示对话框,在右边框中选中图表向导,在对话框下边的下拉列表中选择要创建报表 的基表或查询,本例中选择查询清华大学出版社.
    四,创建图表报表(续)
    在此图表向导对话框中,要求用户选择图表数据所在的字段,此例中单击>>按钮选中所有字段.单击下一步.
    四,创建图表报表(续)
    在此图表向导对话框中,要求用户选择图表类型.此例中选择柱形图.
    单击下一步.
    四,创建图表报表(续)
    在此图表对话框中,要求用户选择图表的布局方式,本例中,将图书条码字段拖到横坐标中,将单价拖到纵坐标中.
    单击下一步按钮,
    四,创建图表报表(续)
    如图所示对话框图表向导对话框中,输入标题单价
    单击完成按钮,生成报表预览.
    五,创建标签
    我们建立图书标签为例,学习创建标签的方法.
    例7-5利用标签向导创建标签――图书,包括书名,出版社,作者和价格.其结果如图所示.
    五,创建标签(续)
    操作步骤如下
    打开如图所示对话框,在右边框中选中标签向导,在对话框下边的下拉列表框中选择要创建报表的基表或查询
    五,创建标签(续)
    在此标签向导对话框中,要求用户选择标签型号,可以选择,也可以自定义.此例中选择标准的avery j8563型号.单击下一步按钮.

    五,创建标签(续)
    在此标签向导对话框中,要求用户选择报表中文本的字体和颜色.
    选择好字体和颜色后,单击下一步按钮.
    五,创建标签(续)
    在此标签向导对话框中,选择书名,作者,出版社和单价4个字段,然后单击下一步按钮
    五,创建标签(续)
    在此标签向导对话框中,选择单价作为排序的依据字段.
    单击下一步按钮.
    五,创建标签(续)
    在此标签向导对话框中,要求用户输入表的名称.输入图书作为名称后,单击完成按钮.
    六,打印和预览报表
    1.页面设置
    任何视图方式打开报表
    选择文件/页面设置选项,打开如图所示页面设置的对话框
    在页面设置对话框中执行设置选项:
    单击边距选项卡,设置页边距并确认是否打印数据;
    单击页选项卡,设置打印方向,页面大小和打印机型号;
    单击列选项卡,设置报表的列数,列宽和列高,如果列数大于1,还要设置列的布局.
    最后单击确定按钮.
    六,打印和预览报表(续)
    六,打印和预览报表(续)
    预览报表
    预览报表包括预览页面布局和报表数据两种类型.
    预览报表的页面布局:
    在设计视图中打开要预览的报表.
    选择视图/版面预览选项,这时就可以预览报表 的页面设置.
    在数据库窗口中预览报表的数据:
    在数据库窗口中,单击报表选项卡.
    选择要预览的报表,单击预览按钮.
    六,打印和预览报表(续)
    打印报表
    在设置页面以后,可以按如下方法打印报表.
    打开要打印的报表.
    选择文件/打印选项,出现如图所示的打印对话框
    在打印对话框中进行以下操作:
    在打印机框中指定打印机的名称,型号和连接的位置
    在打印范围框中,确定要打印的页面.
    在份数框中,指定要打印的份数和是否需要对其进行归类,即对同一报表的不同页首先打印,打印完一份后打印下一份.
    单击确定按钮,开始打印.
    如果直接通过工具栏上的打印,将按照默认的设置打印报表.
    六,打印和预览报表(续)
    7.3高级报表设计
    前面学习的是创建报表的各种基本方法,如果创建出具有更好风格的报表,就要在报表的设计视图中进行相应的设计,本节学习如何实现报表的各种复杂功能,即报表的高级应用.
    一,报表的排序和分组
    在例7-3中提到了排序和分组,那么什么是排序和分组呢 比如图书的单价按照大小排列,就是排序.用户在输出报表时经常需要把具有相同属性的记录排列在一起,如将同类的图书排在一起,这就是分组.
    例7-6,在借书情况查询的基础上用向导建立一个包括字段:姓名,记者账号,书名,单价,和借书时间的借书明细报表.并对报表的借书明细按照读者账号字段进行分组,然后对表中的记录单价和借书时间按升序进行排序.结果如图所示.
    一,报表的排序和分组(续)
    一,报表的排序和分组(续)
    操作步骤如下:
    利用前面学过的知识,
    用向导创建如图所示
    的借书明细报表.
    一,报表的排序和分组(续)
    在设计视图中打开报表借书明细,
    单击工具栏上的排序与分组按钮,屏幕上显示如图所示的排序与分组对话框.
    一,报表的排序和分组(续)
    单击字段/表达式列中的第1行单元格,然后单击下三角箭头,从列表中选择读者帐号.在组属性框 下,单击组页眉框右边下三角箭头,从列表中选择是.
    一,报表的排序和分组(续)
    单击字段/表达式列中第2行单元格,然后单击下三角箭头,从列表中选择单价字段.单击该行的排序次序列右边的下三角箭头,从中选择升序.
    在第3行单元格中加入借书时间,右边选择升序如图所示
    关闭排序与分组对话框
    一,报表的排序和分组(续)
    二,在报表中使用计算总计
    报表中不仅需要详细的数据信息,有时还需要汇总信息.下面通过实例来学习如何在报表中通过使用表达式,添加新列,并为分组和报表计算汇总数据.
    例7-7 给报表借书明细添加新的一行――单价比,并加入平均单价报表总计.结果如图所示.
    二,在报表中使用计算总计(续)
    二,在报表中使用计算总计(续)
    操作步骤如下:
    添加控件及其表达式
    打开如图所示的报表借书明细设计视图,在页面眉中,添加一个标签控件,命名为单价比.
    在主体中,添加一个文本框控件,在文本框中输入计算表达式=[单价]/sum([单价]),把文本框拖到位于单价比标签的下面,然后删除文本框的标签.
    设置文本框的数据显示格式为百分比,如图所示.
    二,在报表中使用计算总计(续)
    添加报表总计及平均单价.
    选中报表页脚,拖动其下沿,使其版面出来.
    在版面上添加平均单价文本框,输入表达式"=avg([单价]) ".
    在版面上添加总计文本框,输入表达式"=sum([单价])"
    把文本框拖到如图中合适位置.
    二,在报表中使用计算总计(续)
    更改外观
    选中平均单价文本框标签,然后右击鼠标,在弹出的所示快捷菜单中设置/背景色为蓝,字体/字体景色为红色,特殊效果为凸出. 同样可设置平均单价文本框的外观.
    设置总计文本框及其标签的外观,将填充/背景色置为淡紫,字体/字体景色置为深绿.
    设置证明人比文本框及标签的外观,/背景色为蓝,/字体景色为红色.
    切换至打印预览状态,如上图所示.
    二,在报表中使用计算总计(续)
    三,创建多列报表
    前面学习的各种报表,每页都只能打印一列,此类报表对于打印单个记录信息量大的报表是合适的.但有时由于单个信息量较少,不需要很大宽度的,为了不造成浪费,节约纸张,可以在一个页面中安排打印两列或多列,这类报表就是多列报表.下面学习怎样创建多列报表.
    要创建多列报表,首先要应用创建一般报表的方法创建报表,然后通过页面设置使所创建的报表为多列.
    三,创建多列报表(续)
    例7-8创建一个基于表图书信息表的两列报表
    操作步骤如下:
    用向导创建单列报表.
    选择文件/页面设置选项,打开如图所示页面设置对话框一,单列选项卡.
    在网络设置栏下的列数中键入所需的列数2.其他设为默认值.
    在边距选项卡中把左边距和右边距设置为10,如图所示,页面设置对话框二.
    最后单击确定按钮,关闭页面设置对话框.
    预览报表,如图所示.
    三,创建多列报表(续)
    三,创建多列报表(续)
    表图书信息表的两列报表
    三,创建多列报表(续)
    如果要在每个字段所在的列上都加上标题,就需要对报表进行分组,然后在设计视图中把标题从页面页眉移到组页眉中去.
    三,创建多列报表(续)
    四,子报表的创建及链接
    子报表是建立在其他报表中的报表,此时其他报表称为主报表.创建子报表,如图所示:
    四,子报表的创建及链接(续)
    例7-9在例7-7的报表借书明细中插入报表,内容为读者信息表的姓名,性别,读者帐号和单位.
    操作步骤如下:
    在图所示的报表设计视图中,将页面页脚的上沿向下拖曳,留出空白版面.
    单击工具栏中的工具箱按钮,在随之弹出 的工具箱中,确认控件向导按钮已按下.
    四,子报表的创建及链接(续)
    单击工具箱中的子报表/子窗体按钮,然后单击为子报表预留的位置,打开报表向导对话框一.如图所示.
    为子报表选择数据来源使用现有的表和查询,然后单击下一步按钮.
    四,子报表的创建及链接(续)
    弹出如图所示对话框,在此确定子报表 中的数据来源为表:读者信息表,字段 为姓名,性别,读者帐号,单位.
    然后单击下步按钮
    四,子报表的创建及链接(续)
    在弹出的如图所示的对话框中确定主报表链接到子报表 的字段,即定义主,子报表之间的关系.可默认从列表中选择,然后单击下一步按钮
    四,子报表的创建及链接(续)
    将子报表命名为"借书者情况",即完成了子报表的创建
    四,子报表的创建及链接(续)
    链接主报表和子报表
    在含有子报表的报表中,使用子报表控件的链接子字段属性和链接子字段性来链接主报表和子报表.如果没有链接主报表和子报表,用户可以直接对这些属性进行设置.
    如在例7-9中时进行属性设置,操作步骤如下:
    四,子报表的创建及链接(续)
    在设计视图中打开借书明细主报表.
    四,子报表的创建及链接(续)
    选定子报表控件,然后右击鼠标,在弹出的快捷菜单中选择属性选项,打开如图所示对话框并单击数据选项卡.
    在链接子字段属性框中,输入子报表中链接字段的名称,并在链接主字段属性框中,输入主报表中链接字段的名称.如果要输入多个链接字段,字段之间用分号分隔.
    关闭对话框,完成链接字段的设置
    操作题
    利用报表向导建立一个学生成绩报表,在报表中,以学生姓名进行分组,需要包括汇总信息.
    在设计视图中对学生成绩报表进行修改,以达到一个良好的视觉效果.
    第八章
    数据访问页
    8.1 数据访问页概述
    数据访问页是直接连接到数据库中数据的Web页;
    通过数据访问页可以将数据发布到Internet或Intranet上,并可通过浏览器进行数据访问,维护,操作;
    通过数据访问页也可以查看,操作来自网上的ACCESS,SQL Server数据库中的数据.
    一,数据访问页的类型
    交互式报表类型
    交互式报表类型的数据访问页用来对数据库中的信息进行展开,折叠分组,前者显示详细信息,后者显示汇总信息.
    可以在数据访问页中对数据进行交互排序和筛选,但只能用来查看数据,不能编辑数据库中的数据.
    一,数据访问页的类型(续)
    数据入口类型
    可用于浏览,添加和编辑数据库中的记录,类似于窗体,可对数据库中的数据进行输入,编辑,删除操作
    与窗体不同的是:数据访问页ACCESS中只保存一个快捷方式,访问页本身存在于ACCESS之外
    数据分析类型
    包含一个数据透视表,可用不同的方法分析数据.
    二,数据访问页的视图
    数据访问页的创建和使用都是在设计视图,数据页视图和Internet Explorer视图中进行,其中:
    设计视图用来设计页,实现特定功能
    页视图是数据页的应用视图
    Internet Explorer视图用于在浏览器中查看数据访问页
    三, 数据访问页的数据源
    数据的最根本来源都是表,ACCESS提供了两种使用Web页中数据的方式:
    导入:就是将数据复制到当前数据库中,要比链接数据快得多
    链接:数据仍然放在当前的位置,按照数据当前的格式使用,用户不需要改变原来的更新,管理和共享数据的方法
    四,窗体,报表,数据访问页的比较



    通过电子邮件访问数据
    可以

    可以
    打印数据



    通过网络与远程数据库进行交互



    与数据库进行交互
    Web页
    报表
    窗体
    功能
    8.2 创建数据访问页
    一, 利用"自动创建数据页"创建:
    包含数据:表/查询中所有字段,不包括图片类型的字段
    数据显示方式:纵栏式
    [例8-1]创建基于"图书信息表"的自动数据访问页,如下:
    一, 利用"自动创建数据页"创建
    一, 利用"自动创建数据页"创建
    创建步骤
    在数据库窗口中单击"页"对象
    选择"新建"按钮
    选择"自动创建数据页:纵栏式"
    在数据来源中选择"图书信息表"
    单击"确定"完成创建
    二, 利用向导创建数据访问页
    [例8-2]使用向导创建"图书查询Web页"
    操作步骤:
    在数据库窗口中,单击"页"按钮
    打开数据访问页向导
    在上页 图中选择"数据页向导",然后在数据来源列表
    中选择"图书信息查询",单击确定
    在"页"对象窗口中,选择"使用向导创建数据访问页",
    同样可以弹出数据页向导,在"表/查询"中选择"图书信
    息查询"
    二, 利用向导创建数据访问页
    在"选定字段"对话框中设置数据访问页的数据来源和所包含的字段
    二, 利用向导创建数据访问页
    对字段数据进行分组:在字段列表框中选择"出版时间",,在示例样式框中显示以"出版时间"进行分组的情况
    二, 利用向导创建数据访问页
    5.单击分组选项,出现"分组间隔"对话框,在"分组间隔"组合框中选择"年",单击确定.
    在数据访问页中可以通过分组将同类信息归结在一起.
    分组数据页可以实现交互功能,也可以通过电子邮件
    实现电子发布,能够随时反映数据的变化.
    但分组后的数据访问页不允许进行数据的修改,只能
    用于浏览数据或筛选排序等操作
    二, 利用向导创建数据访问页
    单击下一步,出现确定排序的对话框,如果不需要排序,则跳过这一步.此处可以使用"出版时间"字段进行升序排列
    单击下一步,输入数据页名称"图书信息查询Web页",单击下一步.
    单击"完成",出现预览窗口,可以在窗口中输入标题"按出版时间分组显示图书信息".
    二, 利用向导创建数据访问页
    切换到"页面视图",单击扩展按钮中的图标,将分组展开
    三, 将现有的Web页转换为数据访问页
    操作步骤:
    在数据库"页"对象窗口中单击"新建"按钮;
    选取"编辑现有的Web页"列表项;
    单击"确定"后,弹出查找Web页的对话框.在此选择想要修改的Web页,然后单击"打开"按钮,打开该页面的设计视图,进行修改.
    四, 利用"设计视图"创建数据访问页
    [例8-4]用设计视图创建一个"图书信息"页
    包含数据:书名,作者,出版社,出版时间,单价
    打开数据库"页"对象窗口
    双击"在设计视图中创建数据访问页",或单击"新建",然后选择"设计视图",弹出空白的设计视图
    四, 利用"设计视图"创建数据访问页
    在空白数据访问页中单击并键入标题"图书信息",单击工具栏中的"字段列表"按钮,弹出字段列表选项
    四, 利用"设计视图"创建数据访问页
    在字段列表中选择"表"并单击扩展图标,展开所有表,然后选择"图书信息表",将其展开后,选择要求的字段,在设计视图中出现5个标签和5个文本框,标签为字段名,文本框自动与相应数据绑定
    四, 利用"设计视图"创建数据访问页
    关闭字段列表,切换到页视图,得到网页,然后切换到"Web"页预览,在浏览器中查看该页.
    8.3数据访问页的编辑
    编辑的过程就是将需要用到的控件一
    个个从工具箱中放到数据访问页上来,
    并将它们属性中的控件来源同相应的表
    或查询进行关联.
    一,在设计视图中编辑
    数据访问页设计视图中,除了数据访问页本身外,还有一个工具箱和属性窗口,数据访问页的工具箱与窗体设计模式中的工具箱相比,不但具有3种最常见的普通控件——标签,命令按钮,文本框,还有其他几种控件
    一,在设计视图中编辑
    播放电影片断
    影片
    图像形式的超级链接
    图像热点
    绑定数据库中的超级链接字段
    绑定超级链接
    电子表格形式绑定数据
    Office电子表格
    以图表形式显示统计数据
    Office图表
    动态计算统计数据并显示
    Office数据透视表
    分组数据显示或折叠
    扩展按钮
    文字在控件范围内滚动
    滚动文字
    数据访问页工具箱中几种特别的控件和作用
    一,在设计视图中编辑
    1.编辑滚动文字
    打开"图书信息"web页的设计视图,关闭字段列表对话框,在适当位置放置一个"滚动文字"控件,在其属性窗口中,将控件来源设置为"书名",切换到"页面视图",可以查看结果.
    一,在设计视图中编辑
    2.编辑绑定超级链接
    在"图书信息表"中,将备注字段类型设置为超级链接.
    在"图书信息"页的设计视图中,将"备注"字段拖入,然后切换到预览视图,可以查看超链接效果
    另外,单击工具栏中超链接工具,在设计视图中划出适当的区域,可以在弹出的对话框中设置超链接
    一,在设计视图中编辑
    3.编辑Office数据透视表
    数据透视表,图表,表格都是Office提供的ActiveX控件,以控件的方式使用它们,这三个控件的属性由其自带的属性工具箱来编辑,而且绑定的数据同该数据访问页用的是哪个数据集关系不大,他们不仅可以使用当前数据库的内容,还有可能使用别的数据库的内容.
    一,在设计视图中编辑
    在"图书信息"设计视图中,单击"数据透视表"按钮,放在数据访问页适当位置上后,即出现一个默认大小的数据透视表的控件.
    一,在设计视图中编辑
    右击该控件,在弹出的快捷菜单中选择"命令和选项"选项
    在弹出的窗口中单击"数据源"选项卡
    一,在设计视图中编辑
    其中"获取数据"是指获取数据的方式是不是ODBC.若只使用本数据库中的数据,则不用ODBC,可保持原值"数据源控件"不变;通过单击"数据成员"右边的下拉按钮来选择要进行分析的原始数据来源"图书信息表"
    一,在设计视图中编辑
    在上图中,将"书名"拖到"将列字段拖至此处",将"出版社"拖到"将行字段拖至此处",将"单价"拖至"汇总或明细处"
    一,在设计视图中编辑
    切换到页视图,如下所示.
    适合应用于需要在网页上动态生成条件时进行分析统计的场合
    二, 在脚本编辑器中编辑
    Access 2002提供了一个脚本编辑器,在这个集成环境中可以直接对网页中的HTML语句进行修改和编辑,操作如下
    打开"图书信息"数据访问页设计视图,关闭"字段列表"显示框.
    从视图菜单中选择"html源文件"选项;或右击设计视图空白处,从弹出的右键菜单中选择"脚本编辑器",弹出集成环境窗口,在此直接编辑html语句.
    三, 将数据表转换为HTML网页
    [例8-5]将"图书管理"数据库中"读者信息表"转换为html网页
    打开数据库,选中"读者信息表",选择菜单"文件"|"导出"选项,弹出如下对话框.
    三, 将数据表转换为HTML网页
    在上图中"保存类型"中选择"HTML文档",在文件名处输入"读者信息",然后单击"导出".
    三, 将数据表转换为HTML网页
    打开"我的文档",双击刚保存的文件,结果如下:
    操作题
    用设计视图创建学生表的WEB页.
    在学生表的WEB页上添加对所选课程的超级链接.
    Access宏的使用
    9.1 宏的概述
    宏就是ACCESS所提供给程序开发者开发窗体或报表的应用程序.它是由一个或多个操作命令的集合,其中每个操作能够实现特定的功能.将多个操作集合在一起,就可以自动完成各种简单的重复性工作,例如打开窗体,显示窗体,删除记录等,可以实现操作的自动化,从而提高工作效率.它是Access2002数据库的对象之一,和表,查询,窗体,报表等其他数据库对象一样.
    一,宏的用处
    使用数据库中宏操作执行任何重复任务或一系列任务时,可以节约时间,提高效率.用宏实现的重复执行任务通常都是非常有用的.当执行所指定的每次以同样的方法运行的操作时,宏会使数据库增加准确性和有效性.用宏可以执行很多种任务.使用宏非常简单,只需利用几个宏操作即可以将已创建的数据库对象联系在一起,实现特定的功能.Access 2002提供了很多个宏操作.
    常用的宏命令简介
    ApplyFilter 操作
    使用 ApplyFilter 操作可以对表,窗体或报表应用筛选,查询或 SQL WHERE 子句,以便限制或排序表的记录以及窗体或报表的基础表或基础查询中的记录.对于报表,只能在其"打开"事件属性所指定的宏中使用该操作.
    Beep 操作
    使用 Beep 操作,可以通过计算机的扬声器发出嘟嘟声.
    常用的宏命令简介
    Close 操作
    使用 Close 操作可以关闭指定的 Microsoft Access 窗口,如果没有指定窗口,则关闭活动窗口.
    CopyObject 操作
    使用 CopyObject 操作,可以将指定的数据库对象复制到另外一个 Microsoft Access 数据库 (.mdb) 中,或以新的名称复制到同一数据库或 Access 项目 (.adp) 中.例如,可以在另一个数据库中复制或备份一个已有的对象,也可以快速地创建一个略有更改的相似对象.
    常用的宏命令简介
    DeleteObject 操作
    用 DeleteObject 操作可删除指定的数据库对象.
    FindRecord 操作
    可以使用 FindRecord 操作来查找满足由 FindRecord 参数所指定的条件的数据的第一个实例.该数据可以在当前的记录中,在后面或前面记录中或在第一个记录中.所查找的记录可以位于活动的表数据表,查询数据表,窗体数据表或窗体中.
    常用的宏命令简介
    MsgBox 操作
    可以使用 MsgBox 操作来显示包含警告或告知性消息的消息框.例如,可以将 MsgBox 操作与验证宏一起使用.当控件或记录未能通过宏中的一个验证条件时,可以用消息框显示出错消息,并指导用户应当输入哪种数据.
    OpenForm 操作
    可以使用 OpenForm 操作来打开"窗体"视图中的窗体,窗体设计视图,打印预览或者数据表视图.可以为窗体选择数据项或窗口模式,并限制窗体所显示的记录.
    常用的宏命令简介
    OpenQuery 操作
    使用 OpenQuery 操作,可以在"数据表"视图,"设计"视图或"打印预览"中打开选择查询或交叉表查询.该操作将运行一个操作查询.可以为查询选择数据输入方式.
    注释__此操作只在 Microsoft Access 数据库环境 (.mdb) 下才可用.如果使用的是 Access 项目环境 (.adp),请参见 OpenView,OpenStoredProcedure 或 OpenFunction 操作.
    OpenReport 操作
    使用 OpenReport 操作,可以在"设计"视图或"打印预览"中打开报表,或者可以立即打印报表.也可以限制需要在报表中打印的记录数.
    常用的宏命令简介
    OpenTable 操作
    使用 OpenTable 操作,可以在"数据表"视图,"设计"视图或"打印预览"中打开表,也可以选择表的数据输入模式.
    Quit 操作
    使用 Quit 操作可以退出 Microsoft Access.另外,Quit 操作还可以从几个有关退出 Access 之前保存数据库对象的选项中指定一个.
    常用的宏命令简介
    RunApp 操作
    安全性__在宏或应用程序中运行可执行文件或代码时要格外小心.对可执行文件或代码执行操作时可能危及计算机和数据的安全.
    使用 RunApp 操作,可以从 Microsoft Access 内部运行基于 Microsoft Windows 或 MS-DOS 的应用程序,比如 Microsoft Excel,Microsoft Word 或 Microsoft PowerPoint.例如,可以将 Excel 电子表格数据粘贴到 Access 数据库中.
    RunCommand 操作
    使用 RunCommand 操作可以运行 Microsoft Access 的内置命令.内置命令可以出现在 Access 菜单栏,工具栏或快捷菜单上.
    常用的宏命令简介
    RunMacro 操作
    使用 RunMacro 操作可以执行宏.该宏可以在宏组中.
    可在以下情况中使用该操作:
    从某个宏中运行另一个宏.
    根据一定条件运行宏.
    将宏附加到自定义菜单命令中.
    Save 操作
    使用 Save 操作可以保存一个指定的 Microsoft Access 对象或在没有指定的情况下保存当前活动的对象.在某些情况下还可以使用新名称保存活动对象(此功能与"文件"菜单中的"另存为"命令一样).
    StopMacro 操作
    用 StopMacro 操作可终止当前正在运行的宏.
    二, 宏的分类
    宏可以分成宏,宏组和条件操作宏.宏是操作序列的集合,而宏组是宏的集合,条件操作宏是带有条件的操作序列,这些宏中所包含的操作序列只有在条件成立时才可执行.

    宏是由一个或多个操作组成的集合,其中每个操作都实现特定的功能.例如打开某个窗体或打印某个报表.宏可以自动完成某些常规任务,例如,可执行一个宏,用于在用户单击某个命令按钮时打印报表.
    二, 宏的分类
    宏组
    宏组实际上是以一个宏名来存储的相关的宏的集合,宏组的每一个都有一个宏的名称,用以标识宏,以便在适当的时候引用宏.这样可以更方便地对宏进行管理,对数据库进行管理.例如,可以将同一个窗体上使用的宏组织到一个宏组中.
    二, 宏的分类
    条件操作宏
    条件操作宏就是在宏中设置条件式,用来判断是否要执行下一个宏命令;也就是只有当条件式成立时,该宏命令会被执行.这样可以加强宏的功能,也使宏的应用更加广泛.利用条件操作可以根据不同的条件执行不同的宏操作.具有条件的宏成为条件操作宏.例如,如果在某个窗体中使用宏来校验数据,可能要某些信息来响应记录的某些输入值,另一些信息来响应不同的值.此时可以使用条件来控制宏的流程.
    9.2 创建宏和宏组
    创建一个宏和宏组.首先我们要打开一个数据库,单击数据库窗口选项卡上的"宏"对象,然后单击数据库窗口上的"新建"选项.这时就弹出了宏设计器窗口.
    一,创建宏
    例9-1创建借书查询窗体宏,包括打开查询和打开窗体两个操作.
    宏的创建通过宏窗口完成,操作步骤如下:
    打开新建宏窗口
    一,创建宏方法(一)
    1单击操作字段 的第1个单元格,再单击右边的下箭头,在下拉列表中,选择OpenQuery.
    2在注释列中可输入此操作的说明
    3在查询下拉列表框中选择一个查询—借书查询.在视图下拉列表框 中选择一种视图—数据表.在数据模式下拉列表框中选择一模式—只读.
    4如果需要在一个宏内添加更多的操作,可以把光标移动 下到一行,重复执行1-3步.
    一,创建宏(方法二)
    1在如图中,将光标移动到下一行,选择菜单窗口中的垂直命令.
    一,创建宏(方法二)
    2数据库窗口和宏窗口同时以的形式显示在屏幕上.
    一,创建宏(方法二)
    3在数据库窗口中,选择窗体选项卡,用鼠标选中借书查询窗体,按住鼠标可以将它拖曳到宏窗口中操作字段的第2个单元格中,同样可以输入注释和操作参数.这样完成第2个操作的定义打开窗体.
    4重复此过程可以定义多个操作.
    一,创建宏
    保存宏
    单击工具样中的保存按钮,弹出如图所示另存为对话框,为借书查询窗体宏,单击确定,即可该宏.
    一,创建宏
    在数据库中打开借书查询窗体宏 ,弹出图所示宏的执行结果.
    二,创建宏组
    创建宏组与创建宏的方法类似
    例9-2在图书管理数据库中创建一个宏组,使该宏组能够自动运行"借书查询窗体宏",并在运行成功后,用一个消息框来显示.该宏组包括宏A和宏B两个宏.操作步骤如下
    二,创建宏组
    1打开新建宏窗口
    在图书管理数据库窗口中,单击宏选项卡,新建 如图所示的宏窗口.单击工具栏中的宏名按钮,增加一个宏名列,如图所示.
    二,创建宏组
    2创建第1个宏
    在新出现的宏名列第1格中,输入宏组中第1个的名字—宏A,在其操作列中选择Msgbox操作.在操作参数的消息框中,键入借书查询窗体宏运行成功!,在发嘟嘟声下拉列表框中,选择是.
    二,创建宏组
    3创建第2个宏,
    在宏名列第2行中,输入第2个宏的名字—宏B.在其操作列中选择RunMacro(运行宏)操作.在操作参数的宏名下拉框 中,选择借书查询窗体宏.
    二,创建宏组
    4保存宏组
    单击工具栏中的保存按钮,在另存为对话框中输入名字为宏组1,单击确定,即可保存该宏组.
    二,创建宏组
    在数据库窗口中打开1 所示宏组的执行结果.
    二,创建宏组
    为了试用宏组中第2个宏"B"的作用,可以按以下方法进行操作:
    先打开窗口,新建一个"试用宏B"宏,在其操作列中选择RunMacro命令,在宏名操作参数中选择宏组1宏 B,如图所示,然后存盘关闭.
    二,创建宏组
    在数据库窗口中双击宏窗口中的"试用宏B"宏对象,系统自动执行宏组1中的宏B,自动打开借书查询和窗体,结果如图所示.它们之间有如下的依次链接关系:试用宏B宏-宏组1.宏B-查询窗体宏的操作序列.
    三,创建条件操作宏
    创建具有条件的宏的方法与创建宏和宏组一样,通过宏窗口来完成,它们 的区别是在宏窗口中需要增加条件列.
    例9-3创建一个宏,确保在图书管理数据库中,图书的作者字段必须被填写,如果用户没有输入该字段时,出现一个警告信息.操作步骤如下:
    三,创建条件操作宏
    1打开新建宏窗口
    在图书管理数据库窗口中,单击宏选项卡,新建一个宏窗口.单击工具栏中的条件按钮,增加一个条件列.
    三,创建条件操作宏
    2创建条件操作
    在条件单元格内,可以直接输入条件表达式.也可以右鼠标,从弹出的快捷菜单中选择生成器选项;在其中选择函数中内置函数 :IsNull(expr)
    将作者作为表达式填入括号中,单击确定按钮,就将函数IsNull设置为条件了.
    三,创建条件操作宏
    继续设置条件符合时所执行的宏命令:选信息框操作,在操作参数的消息下拉框中,键入请输入作者名! 在发嘟嘟声下拉列表框中,选择是,在标题 文本框,输入"输入错误信息!".
    三,创建条件操作宏
    在下一行条件单元格内,输入"…",表示前一行符合条件时,同时也执行此行操作.选取相应的宏命令.
    三,创建条件操作宏
    3保存条件操作宏
    单击工具栏中的保存按钮,在另存为对话框中输入名字为条件宏,单击确定,即可保存条件操作宏.
    三,创建条件操作宏
    4将宏加入窗体对象中
    打开图书查询窗体并切换到设计视图,进行设置.首先选择作者字段,单击工具栏的属性按钮,如图所示,选择事件中更新前的下拉列表中条件宏选项,关闭属性框 .
    三,创建条件操作宏
    5验证条件操作宏
    保存窗体的变更,切换至窗体视图,将作者字段删除.再将焦点移到别处时,就会出现警告窗口.
    9.3运行宏
    运行宏时,Access2002将从宏的起始点启动,并执行宏中所有操作,直到另一个宏(如果宏在宏组)或者宏的结束点.执行宏的方法有多种,下面几种.
    一,执行宏
    1从宏窗口下执行宏
    在如图所示宏窗口中,单击工具栏中的运行按钮.
    2从数据库窗口下执行宏
    在数据库窗口中,单击宏选项卡鼠标选中要执行的宏,右击鼠标,在弹出 的快捷菜单中选中运行选项.或者双击所要执行的宏来运行它.
    一,执行宏
    3 从Access主窗口下执行宏
    在Access主窗口选择/宏/运行宏选项.
    在如图所示的执行宏对话框内输入要执行的宏名,单击确定按钮即可.
    一,执行宏
    4 从另一个宏中执行宏
    一个宏运行另一个宏使用宏操作中的runmacro命令,另一个宏的宏名作为操作参数.
    二,调试宏
    对于操作较复杂的宏,运行时如果出现错误,不容易发现.在进行对宏的调试中,可以采用宏的单步执行,即一次只执行一个操作的调试.这样可以观察宏的流程和每一步操作的结果,能够比较容易的分析出出错的原因,改正导致出错的操作.
    例9-4 对创建 的例9-1借书查询窗体宏来进行调试.
    操作步骤如下:
    二,调试宏
    首先在设计视图中打开此宏,单击工具栏上的单步按钮.
    弹出 如图所示的单步执行宏对话框.
    二,调试宏
    单击单步执行按钮,可以执行显示在对话框 中的操作借书查询.
    单击继续按钮可以关闭单步执行,并执行宏的未完成部分.
    单击停止按钮,将停止宏的执行并关闭对话框以关闭单步执行.
    9.4 宏的应用实例
    例9-5 在图书管理数据库中的读者信息查询窗体中,创建一个查询命令按钮,单击此按钮 ,将会在窗体中打开一个读者权限查询窗体.操作如下:
    9.4 宏的应用实例
    1在图书管理数据库中,单击宏选项,并单击新建按钮,如图所示
    9.4 宏的应用实例
    2在第1行的操作列内,单击列右边的下拉箭头,从中选择OpenQuery命令,在操作参数框 内的查询名称列表中选择读者权限查询列表项,在视图列表 中选择数据表列表项.
    9.4 宏的应用实例
    3 单击工具栏中保存按钮,并将其命名为读者权限查询宏.
    9.4 宏的应用实例
    4 在读者信息查询窗体中创建一个命令按钮.在数据库窗口下,单击窗体选项卡,并在设计视图中打开读者信息查询窗体.
    9.4 宏的应用实例
    5 然后单击工具箱中命令按钮,将其放置在窗体中合适的位置,弹出如图所示命令按钮向导对话框 一.在类别列表框 中选择杂项列表项,在操作列表框 中选择运行宏列表项.单击下一步按钮.
    9.4 宏的应用实例
    6 弹出如图所示命令按钮向导对话框二.确定命令按钮运行的宏,在列表框 中选择读者权限查询宏.单击下一步按钮.
    9.4 宏的应用实例
    7 弹出命令按钮向导对话框三,在其中选择文本项,并在文本框 内输入读者权限,作为按钮显示的标题.单击下一步按钮
    9.4 宏的应用实例
    8 弹出命令按钮向导对话框四.在此命令按钮的名称查询,单击完成.
    9.4 宏的应用实例
    9 切换到窗体视图,窗体中多出一个读者权限按钮.
    9.4 宏的应用实例
    单击此按钮, 出现如图所示读者信息查询表.
    9.4 宏的应用实例
    例9-6 在图书管理数据库中的图书信息查询窗体中,创建一个关闭按钮,单击此按钮,将执行关闭窗体动作.
    操作步骤如下:
    9.4 宏的应用实例
    1 在图书管理数据库中,创建一个关闭窗体宏,如图所示.
    9.4 宏的应用实例
    2 在设计视图中打开图书信息窗体,并创建一个命令按钮,单击此命令按钮,并通过工具栏中属性按钮,打开命令按钮的属性表.在格式选项卡的标题 中,将其标题设置为关闭窗体.
    9.4 宏的应用实例
    3 在事件选项卡的单击栏中,从右边下拉列表框中选择关闭窗体宏.
    9.4 宏的应用实例
    4关闭属性框 ,保存对窗体 的修改设计并关闭.
    这样,再次打开图书信息查询窗体时,便单击关闭按钮来关闭此窗体.
    操作题
    在学生管理系统中,创建宏完成下列操作:
    扬声器发出嘟嘟声;
    打开报表;
    弹出消息框,框中显示"欢迎再次查看报表!"
    第10章

    模块和应用程序设计
    1.模块基础知识
    宏可以执行一系列简单的操作,但若要对数据库对象进行更复杂,更灵活的控制,就需要进行编程.
    ACCESS中,编程通过模块对象实现,模块将各种数据库对象联结起来,构成一个完整的系统.
    1.1 模块的概念
    模块是将VBA(Visual Basic for Applications)声明和过程作为一个单元进行保存的集合.
    模块是由一个或多个过程组成的,其中的每个过程都是一个函数过程或子程序,它们各实现一种或几种功能.
    过程 是包含VB代码的单位,包含一系列的语句和方法,执行特定的操作.
    声明 由Option语句配置模块中整个编程环境
    1.2模块的分类
    类模块
    类模块是可以定义新对象的模块,模块中定义的过程将变成该对象的属性或方法
    标准模块
    包含通用过程和常用过程.通用过程是不与任何对象相关联的过程.常用过程是可以在数据库中任何地方执行的过程.
    2. 创建模块
    2.1 创建类模块
    2.2 创建标准模块
    2.1 创建类模块
    在设计视图中打开相应的窗体或报表.
    2.1 创建类模块
    单击选择要执行事件的控件,单击"属性"按钮,或右键单击打开该对象的属性表,在属性表中选择"事件"选项卡.
    2.1 创建类模块
    选择要创建事件过程的属性框,如"单击","双击"等,表示在单击或双击后将要执行的事件过程.
    2.1 创建类模块
    单击"单击"属性框右边的"生成器"按钮,打开"选择生成器"对话框,再次对话框中选择"代码生成器"
    2.1 创建类模块
    单击"确定"按钮,打开模块窗口,系统自动生成对应事件过程的过程头和过程尾,如下图,可以在"模块窗口中输入要完成的事件
    2.2 创建标准模块
    创建标准模块时,可以在数据库窗口的"模块"选项卡中单击"新建"按钮,弹出如下窗口,在此窗口中输入编写标准模块的代码. 由于事件过程不与任何窗体或报表具有直接关系,因此都要由用户自己编写.
    3.模块应用实例
    [10-1]在"图书管理"数据库中创建一个窗体类模块,在此窗体中有一个命令按钮,单击该按钮,可以打开已有的窗体,比如"读者权限"窗体,并将Form对象变量指向该窗体,如下图所示
    3.模块应用实例
    1.在数据库窗口中打开"窗体"对象窗口,单击"新建"按钮,在打开"新建窗体"对话框中选择"设计视图",然后"确定",打开窗体设计视图.
    3.模块应用实例
    2.从工具箱中选择"命令按钮"控件,将其放置在窗体上.
    3.模块应用实例
    3.单击工具栏中属性按钮,设置命令按钮的属性如下:
    在"格式"选项卡的"标题"栏中,将其标题设置为"查看读者权限"
    3.模块应用实例
    在事件选项 卡的"单击"栏中,单击右边的"生成器"按钮,在弹出的"选择生成器"对话框中选择"代码生成器"

    3.模块应用实例

    在上图的"Private Sub Command0_click()"和"End Sub"之间输入以下代码:
    Dim frm As Form
    DoCmd.OpenForm"读者权限"
    Set frm=Forms!读者权限
    3.模块应用实例
    4.切换到窗体视图,查看结果
    4.Access数据库应用程序设计
    Access数据库应用程序是用Access数据库管理系统建立的应用程序.
    本质上,Access数据库应用程序就是Access建立的数据库,它是由表,查询,窗体,报表,宏和模块等对象构成,这些对象可以存储在一个或多个Access数据库文件(.mdb)中,形成一个有机的整体,从而完成特定的任务
    4.Access数据库应用程序设计
    Microsoft Access是一个数据库管理系统,是建立数据库或数据库应用程序的工具.
    一般的,在开发完一个Access应用程序以后,最好将它们分成两个数据库:一个应用程序数据库,一个存储数据的数据库,两者通过链接表建立联系,这样可以提高应用程序的性能,便于系统的维护和升级.
    4.1用数据库向导创建数据库应用程序
    [10-2]用向导创建一个如下图所示的"联系管理"数据库的主切换面板,在此面板中,为用户提供一些按钮和按钮功能的说明文本,以方便打开"联系管理"数据库中的其它窗体和报表等对象
    4.1用数据库向导创建数据库应用程序
    操作步骤:
    从启动Microsoft Access开始,屏幕上自动显示如图所示对话框,单击选择"新建"|"项目(现有数据)"或"新建"|"项目(新数据)"
    4.1用数据库向导创建数据库应用程序
    若已经打开了数据库或者Access启动时显示的
    对话框已经关闭,单击"数据库"工具栏上的"根
    据模板新建"按钮,出现"新建"对话框,单击"数
    据库"选项卡,并单击"联系管理"图标
    4.1用数据库向导创建数据库应用程序
    单击"确定",指定新建数据库的名称及保存的位置
    4.1用数据库向导创建数据库应用程序
    3.单击创建按钮,弹出向导对话框一,列出"信息管理"数据库包含的信息
    4.1用数据库向导创建数据库应用程序
    4.单击"下一步"弹出向导二,在此选择要添加的字段(斜体显示的字段)
    4.1用数据库向导创建数据库应用程序
    5. 单击"下一步"弹出向导三,在此选择窗体显示的样式
    4.1用数据库向导创建数据库应用程序
    6.单击"下一步"选择打印报表的样式
    4.1用数据库向导创建数据库应用程序
    7.单击"下一步",确定数据库的标题
    4.1用数据库向导创建数据库应用程序
    8.单击"下一步",确定构建完数据库后是否启动数据库
    4.1用数据库向导创建数据库应用程序
    9. 单击"完成"系统开始创建"联系管理"数据库,然后自动打开"主切换面板".至此,数据库向导创建了多个数据库对象,形成一个有机的整体.
    10.4.2自定义创建数据库应用程序
    [10-3]为"图书管理"数据库创建一个应用程序,主切换面板如下:
    10.4.2自定义创建数据库应用程序
    操作步骤:
    创建如下图所示的"启动"窗体
    10.4.2自定义创建数据库应用程序
    在窗体设计视图中添加命令按钮和标签控件.
    10.4.2自定义创建数据库应用程序
    创建如下宏:
    打开读者权限窗体宏
    打开表——读者信息,借书信息,图书信息的三个宏
    打开报表"图书信息报表"宏
    关闭窗体宏
    退出系统宏
    10.4.2自定义创建数据库应用程序
    ①创建宏过程.
    10.4.2自定义创建数据库应用程序
    ②然后将窗体中各命令按钮与相应的宏对象链接在一起,形成有机整体.
    10.4.2自定义创建数据库应用程序
    建立一个主切换面板,将它设置成启动窗体,并设置启动选项.
    :
    打开"图书管理"数据库,从"工具"菜单中选择"启动"选项.
    10.4.2自定义创建数据库应用程序
    出现启动对话框.
    10.4.2自定义创建数据库应用程序
    在"应用程序标题"文本框中输入"图书管理数据库"作为窗口标题栏
    10.4.2自定义创建数据库应用程序
    在"应用程序图标"文本框中可以选择一幅图片
    10.4.2自定义创建数据库应用程序
    在"显示窗体\页"组合框中指定打开数据库时自动打开的窗体或页,这里选择窗体"启动'
    10.4.2自定义创建数据库应用程序
    在"菜单栏"和快捷菜单栏"可以将自己创建的菜单指定为默认菜单
    10.4.2自定义创建数据库应用程序

    再次打开"图书管理"数据库,系统自动打开"启动"窗体,可以通过各按钮进行相应的操作.
    操作题
    创建一个窗体类模块,在上面建立一个关闭命令按钮,单击此按钮可以关闭此窗体.
    Access数据库的管理
    11.1 数据的安全性
    用Access建立一个数据库后,其默认状态是对用户开放所有数据库操作权限,这样会对数据库带来一定影响,严重时还可能会毁掉整个数据库.在这种情况下,就需要采取一些措施来保护数据库的安全.
    Access有各种不同的策略来控制数据库及其对象的访问级别.对Access数据库的保护可采用加密数据库,设置密码和设置用户和组的安全来实现.
    一, 加密,解密数据库
    1 加密/解密
    对数据库进行加密操作,将会压缩数据库文件,并使其无法通过工具程序或字处理程序解密.数据库的解密是加密的反过程.
    例11-1 对在前几章中建立的图书管理数据库进行加密和解密
    操作步骤如下:
    一, 加密,解密数据库
    1 )选择加密/解密数据库命令
    启动Access,但不要打开数据库(不能对打开 的数据库进行加密或解密).选择菜单工具/安全/加密/解密数据库选项.
    一, 加密,解密数据库
    2)选择数据库
    选择要加密或解密的数据库:图书管理数据库.mdb,然后单击确定按钮.
    一, 加密,解密数据库
    3)保存加密/解密后的数据库
    为加密之后 的数据库指定名称,单击保存按钮,即可生成加密或解密数据库.
    一, 加密,解密数据库
    2 设置/撤消数据库的打开密码
    例11-2 为图书管理数据库.mdb设置打开密码,使得当每次打开数据库时,出现如图的要求输入密码对话框.
    一, 加密,解密数据库
    操作步骤如下:
    1)关闭要设置密码的数据库,同时确认没有其他用户打开该数据库(不能对打开 的数据库设置密码).
    2)为数据库复制一个备份,并将其存入到安全的地方.
    一, 加密,解密数据库
    3)单击文件菜单中的打开或者单击工具兰上的打开按钮,在弹出 的对话框中选定要设置密码的数据库—图书管理数据库.mdb单击打开按钮右边的下箭头,选择以独占方式打开选项.
    如果数据库中包含AutoExcc宏或设置了启动窗体,则在选择以独占方式打开选项之前按住Shift键.
    一, 加密,解密数据库
    4)打开数据库后,选择工具/安全/设置数据库密码选项
    弹出设置数据库密码对话框
    一, 加密,解密数据库
    5)在密码框中输入要设置的密码,在验证框中再次输入相同的密码确认,然后单击确认按钮,这样,在下次启动该数据库时系统会要求用户输入密码,如图所示.无法打开数据库.
    一, 加密,解密数据库
    6) 若要撤消数据库的密码,以独占方式打开需要撤消密码的数据库,选择撤消数据库密码选项,在撤消数据库密码对话框中输入当前的数据库密码,然后单击确定按钮即可.下次启动该数据库时就可以发现数据库密码已被撤消.
    二, 用户安全
    为数据库设置密码后,所有用户都必须先输入密码,才可以打开数据库.但是,一旦打开了数据库,是不再有其他任何安全机制.
    保护数据库的最灵活和最广泛的方法是用户级安全机制.此机制是通过建立数据库中敏感数据和对象的访问级别,来保护数据库的安全.Access2002提供了设置安全机制向导,可以方便地设置用户级安全.
    默认情况下,共享的Access2002数据库有两个组,即管理员组和用户组.管理员组拥有对数据库较大范围的操作权限,而用户组则具有较小范围的操作权限 .
    二, 用户安全
    例11-3 为图书管理数据库设置管理员组,用户组和工作组,并分别设置各组权限.以对图书信息表的权限为例.
    操作步骤如下:
    1) 创建组账号
    打开数据库—图书管理数据库.mdb并选中图书信息表.
    选择工具/安全/用户与组账号选项,打开用户与组帐号对话框,单击组选项卡.
    二, 用户安全
    二, 用户安全
    在用户与组账户对话框组选项卡中,单击新建按钮,如图所示,新建一个工作组,并单击确定按钮.
    二, 用户安全
    如果单击用户选项卡,可以单击新建,添加若干个用户,再单击确定按钮,则添加用户名称自动隶属于用户组.
    二, 用户安全
    单击更改登录密码选项卡,可以修改用户的密码,最后单击确认按钮,完成用户与组账户 的设置.
    二, 用户安全
    2) 设置用户与组权限
    打开图书管理数据库.mdb.选择工具/安全/用户与组权限选项,打开用户与组权限对话框,单击权限选项卡.
    二, 用户安全
    单击选取用户单选按钮,可以为管理员以及新添加的用户设置权限,如图所示.
    二, 用户安全
    单击选取组单选按钮,为管理员组设置权限.
    二, 用户安全
    单击选取组单选按钮,为用户组设置权限.
    二, 用户安全
    单击选取组单选按钮,为工作组设置权限.
    11.2 管理数据库
    一, 数据的导入,导出及链接
    二, 数据库的压缩,修复及备份
    三, 优化数据库性能
    一, 数据的导入,导出及链接
    数据的导入是将其他文件格式转换成Access的数据和数据库对象.
    数据的导出是一种将数据和数据库对象输出到其他数据库,电子表格或文件格式的方法,以便其他数据库,应用程序可以使用这些数据.导出功能与和粘贴功能相似,可以将数据导出到各种支持的数据库,程序和文件格式中.
    数据的链接是建立一个从另外一个应用程序的数据文件到Access之间的连接,以便在源应用程序和Access中都可以查看和编辑数据.在第4章创建表中已经介绍数据的链接方法,本章就不再叙述.
    一, 数据的导入,导出及链接
    1 数据的导入
    例11-4 在一个空数据库中导入一个借书情况查询.
    操作步骤如下:
    1) 新建一个空数据库,并将其打开.选择文件/获取外部数据/导入选项,如图所示:
    一, 数据的导入,导出及链接
    一, 数据的导入,导出及链接
    2 )弹出导入对话框,从其中选择要导入的数据库图书管理数据库.
    一, 数据的导入,导出及链接
    3 )单击导入按钮,弹出导入对象对话框,可以从中选择要数据库对象借书情况查询.
    一, 数据的导入,导出及链接
    4)单击确定按钮,即可看到刚才所建的空数据库中出现借书情况查询.
    一, 数据的导入,导出及链接
    2.数据的导出
    例11-5 利用数据库导出一个文本文件.
    操作步骤如下:
    1)打开图书管理数据库,在数据库窗口中选择要导出的对象窗体,并选择图书信息窗体,选择文件/导出选项.如图所示.
    一, 数据的导入,导出及链接
    一, 数据的导入,导出及链接
    2)弹出如图所示导出对话框,在保存类型中选择文本文件.单击导出按钮.
    一, 数据的导入,导出及链接
    3)在导出完毕后,可以打开图书信息.txt,将看到如图所示文件,其中每一行都是一条记录,而每个字段值都会以逗号分开.
    二, 数据库的压缩,修复及备份
    Access提供了两种保证其数据库的可靠性途径,一是建立数据库的备份,当数据库损坏时可用备份的数据库来恢复;另一种是通过自动修复功能来修复出现错误的数据库.为提高数据库的性能,Access还提供了性能优化分析器来帮助用户设计具有较高整体性能的数据库.并且Access还提供了数据库压缩和修复功能,以降低对存储空间的需求,并修复受损坏的数据库.
    二, 数据库的压缩,修复及备份
    1 数据库的备份
    首先关闭要备份的数据库,如果是在多用户数据库环境中,要确保所有用户都关闭了要备份的数据库,然后使用Windows的资源管理器或我的电脑的复制命令或其他备份软件,将数据库文件(扩展名为.mdb)复制到所选择的备份上.
    二, 数据库的压缩,修复及备份
    2. 数据库的压缩和修复
    压缩数据库可以备份数据库,亲不亲安排数据库文件在磁盘中保存的位置,并右以释放部分磁盘.在Access2002中数据库的压缩和修复功能合并为一个工具,它可压缩Access2002数据库,也可以压缩Access 2002项目.
    二, 数据库的压缩,修复及备份
    若要压缩Access 未打开的数据库,操作步骤如下:
    1)关闭当前打开的数据库.
    2)选择工具/ 数据库实用工具/压缩和修复数据库选项.
    二, 数据库的压缩,修复及备份
    3)弹出压缩数据库来源对话框,如图所示.
    4)在对话框中选择要压缩的数据库,然后单击压缩按钮.
    二, 数据库的压缩,修复及备份
    5)打开将数据库为压缩对话框,如图所示.
    选择保存类型,在文件名文本框中输入要压缩的数据库名称,最后单击保存按钮即开始压缩和修复数据库.
    二, 数据库的压缩,修复及备份
    6)也可以关闭某个打开的数据库时选择自动压缩选项.单击确定按钮即可.
    二, 数据库的压缩,修复及备份
    3 . 优化数据库性能
    例11-6 使用性能优化器可以优化Access数据库的性能.
    操作步骤如下:
    二, 数据库的压缩,修复及备份
    1)打开要优化的图书管理数据库.mdb.
    2)选择工具/分析/性能选项.
    二, 数据库的压缩,修复及备份
    3)打开性能优化器对话框之一,单击要优化的数据库对象类型的选项卡,如果单击全部对象类型选项卡可以同时查看全部数据库的列表.
    4)选择所要优化的数据库对象,单击选定按钮可以选择列表中所有的数据库对象.
    二, 数据库的压缩,修复及备份
    5)重复步骤3-4,直到已经选择完所有要优化的数据库对象,然后单击确定,性能分析器就开始分析所选择的每个数据库对象.
    二, 数据库的压缩,修复及备份
    二, 数据库的压缩,修复及备份
    6)分析结束后,性能分析器显示性能分析器对话框之二.对话框中列出3种分析结果:推荐,建议,意见.选择分析结果列表中的任何一个选项时,在列表下的分析注释框中会建议优化的相关信息.在执行建议优化之前,可以通过阅读分析注释框中的相关信息,来考虑潜在的权衡.
    7)选择一个或多个要执行的推荐和建议优化,然后单击优化按钮,性能分析就会执行优化,然后将它们标记为固定.可以用此方法来将全部的推荐和建议进行优化.
    操作题
    对学生管理数据库进行加密和解密操作.
    利用设置安全机制向导,为学生管理数据库设置用户级安全.
    使用ACCESS2002性能分析器优化学生管理数据库.

    下一页

  • 下载地址 (推荐使用迅雷下载地址,速度快,支持断点续传)
  • 免费下载 DOC格式下载
  • 您可能感兴趣的
  • access数据库软件下载  access软件下载  access2003软件下载  access软件免费下载  办公软件access下载  access数据库软件  access软件  二级access软件下载  计算机二级access软件