第1章 Access 概述
各结构的功能
1、 access是一种关系型数据库。
2、Access是一个面向对象的开发工具
3、Access不仅是表对象的集合,还包含查询、窗体、报表、页、宏、模块等共7个对象。
(1)表是Access数据库的核心,用于存储数据。其他对象都不能存放数据。实际应用系统中必须包含的对象是表。
(2)查询包含数据检索和数据操作。
(3)窗体的数据源可以是表、查询等。窗体的作用有:在数据库中输入和显示数据;利用切换面板来打开数据库中的其他窗体和报表;用自定义框来接受用户的输入及根据输入执行操作。
(4)报表只能显示、输出数据。利用报表可以对数据进行排序、分组、统计计算。
(5)页对象是连接到数据库的Web页,只能用浏览器打开,主要用于Internet或Intranet
(6)宏是一组操作命令的集合,每个操作都用于实现特定的功能。
(7)模块是用VBA语言编写的。VBA语言是VB语言的子集。
第2章 创建数据库
创建空数据库
1、Access数据库不仅是数据表的集合,还是查询、窗体等相关对象的集合。一个数据库对应一个文件,且容量不能扩展,最大2G(不要一个数据表建一个数据库)。Access数据库与数据库文件是一一对应的,数据库文件的后缀是.MDB。
2、创建数据库有两种方式:建空数据库,使用模板。
3、要求掌握创建空数据库。数据库创建好以后是没有任何对象的。需要在空数据库内创建表等对象。
4、打开数据库的四种方式分别代表的含义是什么?
打开:多用户操作,数据可以更改。
独占:单用户使用,对象可以被更改。(设置密码的条件)
只读:数据处于只读状态。
独占只读:单用户使用,且数据只读。
5、设置密码的过程:(1)以独占方式打开数据库,(2)工具安全设置数据库密码。设置了密码就拥有了对数据库的所有权限。
第3章 设计Access表对象
导入数据—文本、Excel文件、关系型数据库文件
建立关系—主键、关系
1、表对象由两部分构成:结构和数据。表设计视图只包含表结构,不包含表数据。数据表视图只包含数据,显示的是记录值。
2、要求掌握的表的创建方法:通过导入外部数据来创建表对象;或通过使用Access生成表查询对象来创建表对象。
3、建表的注意事项:
4、数据类型:会选择合适的数据类型(有十种)
如文本(最长255字符),备注(最长65535字符),自动编号(唯一顺序值,不能修改),数字,日期/时间,货币,是/否,OLE对象,超级链接,查阅向导(使用查阅向导只是可以用下拉列表选择输入字段值,并非数据类型变为查阅向导)等。
注意:OLE对象、超级链接、备注属性的字段,不能用于排序、分组、索引;
字段属性:
(1)字段大小,
(2)格式(用于显示或打印的,并不影响存储的数据值),
(3)输入掩码(设定输入格式、限制数值的输入),
(4)标题(字段的别名,浏览数据时看到的),
(5)默认值(如date(),sql 为getdate(),取当前系统日期),
(6)有效性规则,有效性文本,
(7)必填字段,
(8)索引(可以加快查询和排序的速度,但会降低增、删、改的速度)
5、导入外部数据类型:文本,Excel,ODBC。
注意:(1)导入文本文件时,注意文本识别符,如双引号、单引号;
(2)Excel一次只能导一张表;
(3)用ODBC导入SQL数据时注意更改默认数据库,否则找不到需要的表。步骤:新建DSN-数据源选择SQL Server-DSN名字放默认位置(点完成)-指定服务器就是本机(“local”或者“.”)-下一步(不能点完成)-使用windowsID验证-更改默认数据库为要导入数据所在的数据库-测试连接;
6、导入方法:文件获取外部数据导入;表右键导入;新建导入表。注意:
(1)显示数据时选择“高级”“简体中文”;
(2)导入数据时选择数据保存位置时,都选择“新表中”;
(3)不需要的字段可以选择“跳过”,考试不管;
(4)多个字段做主键时,导入过程中选“无主键”,导入完毕再设置主键。
7、建立关系步骤为:
(1)打开数据库文件,单击工具栏上的“关系”按钮
(2)弹出“显示表”对话框,选“表”标签,选中要建立关系的表,按添加按钮或直接双击该表名,添加所需要建立关系的表
(3)用鼠标拖动来建立关系
8、表的关系:定义参照完整性的条件:1.同属一个access 数据库2.有主关键字 3.字段类型匹配4.相关表中外部字段的值必须是主表的主键字段中已有的值
9、级联删除、级联更新的含义:(1)级联更新:更改主表主键时,自动更新相关表中相应值,否则仅可以更新主表中与子表无关的值;(2)级联删除:删除主表中的记录时,自动删除相关表中的有关记录,否则仅可以删除主表中与子表记录无关的记录。
第4章 处理Access的数据
1、Access提供了两种方法来使用外部数据源的数据:
(1)将数据导入到当前数据库中的新Access表中。(上机操作用导入)
(2)将数据库保留在其当前的位置上,以当前格式使用但不导入,称之为链接。
2、导入和链接的比较:(不用背,理解,选择题)
(1)因为导入和链接的本质不同,导入是把整个数据“拷贝”过来,而链接只是去“使用”它,所以导入过程较慢,但操作快了;而链接则相反,它的过程快,但以后的操作较慢。
(2)导入过来的数据文件若有修改,并不会影响原来的旧数据库,因为它是复制后的结果;链接的数据库却会随时反映所做的修改,所以链接方式比较适合在网络上“资源共享”的环境中应用。导入方式即使是通过网络,也只是一种“数据享用”。
3、何时使用导入,何时使用链接?(不用背,理解,选择题)
(1)如果目的文件太大,根本不可能导入,或者导入进来之后,硬盘就没有缓冲的空间了,这种情况下只有使用链接。
(2)如果目的文件很小,而且不会经常改变,那可以使用导入。如果内容常常变更,那么即使文件很小也应该使用链接,这样比较方便。
(3)如果数据不需要和其它用户共享,那可以使用导入,否则就应该使用链接。
(4)如果很重视操作速度,希望得到最佳的使用效率,那么应该使用导入。
4、Access里面的删除是无法撤销的,而且删除、插入是记录级的操作。更新是字段级的。
5、对于定义OLE对象的字段,在输入字段值时,应单击右键插入对象。
第5章 排序、筛选数 (仅笔试)
1、排序的概念:排序是按事先给定的一个或多个字段值的内容,以特定顺序对记录集进行重新排序。排序不适用于OLE对象、超级链接、备注。
2、不同类型数据排序的规则有所不同。
如,字符串的排序不同于数字的排序,如文本的”21” < ”3” < ”31”。
3、日期表示方法不同于SQL,用 “# “来限定,如#2006-1-1# < #2007-1-7#。
4、排序的种类:简单排序和复杂排序。
第6章 简单排序:按某字段进行统一升序或降序。(按钮在工具栏)
(2)复杂排序:将记录按某些字段进行不统一的排序。如第一列升序,第二列降序……(数据表-“记录”-“筛选”-“高级筛选/排序”-应用筛选-保存)
5、筛选记录有四种:按选定内容筛选(各条件之间是AND的关系,不能实现或的关系);按窗体筛选;按输入筛选目标;复杂筛选
6、通配符为*和?
7、复杂筛选可以保存为查询对象。但有一定的局限性,只能单表筛选
8、筛选对象:表、查询、窗体。
9、便于浏览,可以对列冻结(固定在最左边,取消不会回到原位置)或隐藏。
10、查找和替换可以针对整个表,也可以针对某个字段进行。
第6章 创建选择查询对象
查询用设计器做!
创建简单选择查询对象
创建参数查询对象
创建交叉表查询对象
1、一个Access查询对象实质上是一条SQL语句,建立一个查询后,可以将它看作是一个简化的数据表。
2、查询分为选择查询(4种)(简单查询、汇总查询、参数查询、交叉表查询)和操作查询(4种)(生成表查询、更新查询、删除查询、追加查询)
3、(了解就行,选择题)在Access中,提供了简单向导、交叉表查询向导、查找重复项查询向导、查找不匹配项查询向导。四种查询向导和一种设计视图查询。注意:用向导查询时不能输入限制条件,因而有一定的局限性。老师建议用设计视图来做查询。
4、查询提供了三种视图:设计视图,数据表视图,SQL视图。
5、多表查询须通过两表间字段关系来设置连接条件。考试按照默认内连接来做。
6、date()-30 表示系统时间减去天数;
date()-#2005-1-1#表示2005年1月1日和当前日期相差的天数(仅Access可以这样表示)
7、表达式运算符(参见书P81)
8、连接表达式:+ (要求两端数据类型一致) & (强制连接为字符串,一般用这个)
9、通配符“*”和“?”
10、常用函数(参见书P82)
注:取整是直接截断小数。
MID :取中间某段字符,用法同substring
11、某日期以后,不含该日期。
12、查询1950年以后出生的职工姓名和出生日期。Year(出生日期)> 1950,把Year(出生日期)写在字段位置上,> 1950 写在准则位置上。
13、汇总:选择汇总按钮,聚合函数选择,where,指定返回记录数
14、[参数]用中括号括起来。参数名称不要和字段名相同,否则系统认为是该字段
15、交叉表一定含有两个以上的分组,有行标题多个、一个列标题和值,行标题和列标题一定是分组,值是一个统计函数。
若用设计器进行交叉表查询的时候。横向求和的表达式和函数与值一样,只是在交叉表选项中选择行标题。
16、交叉表查询要注意选择查询类型交叉表查询。
17、交叉表带参数的查询,必须先声明参数,查询菜单参数定义参数(不用加[ ]),指定数据类型。
第7章 熟悉和使用查询对象
四种都要求,重点是更新查询和生成表查询。
1、删除查询:注意选择查询类型,设计器里至少有两个列:where 表示条件,from 表示删除哪个表的记录。涉及多表时,用另外的表作条件即可。
2、更新查询:注意选择查询类型,
(1)字段一栏不能写表达式,只能写在“更新到”一栏中;“更新到”表达式中要引用字段时一定要用中括号括起来,例如:[基本工资]*1.2;
(2)可能比较复杂,例如更新到:“20”&right([邮政编码],len[邮政编码]-2),准则:like “10*”
3、追加查询是将选定的一个或多个表对象中的复合某些特定条件的一组记录添加至另一个或多个表对象的尾部。表示条件的列的“追加到”字段名要为空。掌握例题即可,例:
(1)将年龄大于60岁的职工信息最加到职工表中
(2)将信息中心的职工信息最加到职工表中
4、生成表查询:选择查询类型。后边操作跟选择查询差不多。
注意:追加查询的目标表是存在的;
生成表查询目标表是新建的表,如果选择已经存在的表作为目标表,则会重写表的内容!!
5、当一个字段在多张表中都有时,用[表名].[字段名]方式引用
第8章 报表
建议用向导创建报表(向导、自动报表、设计器)
表格式报表
△组合、合计和汇总报表
标签,文本框的使用
1、报表的作用:报表以格式化的形式显示数据、输出数据,利用报表可以对数据进行排序、分组、统计。
2、报表的数据源可以是表、查询(只能是选择查询),也可以是SQL语句。
3、报表的分类:纵栏式、表格式、组合|合计和汇总报表(掌握这两种)、图表式、邮件标签式。
4、报表页眉:显示标题。
报表页脚:对整个报表的总体统计值,如总计、总平均等。
页面页眉:分页打印时每页的标题。
页面页脚:例如”共”&[Pages]&”页,第”&[page]&”页”。
分组的页眉页脚:页眉显示分组的依据,页脚定义分组后每组的统计数字,如分组后每组的小计等;
5、控件的使用要求:标签和文本框。标签显示的内容不变。文本框用于绑定数据(公式)。
6、报表属性可以点标尺最左边的黑方块,通过报表属性可重新选择数据源或定义条件。
7、操作步骤:
(1) 创建查询对象——报表1。最好设置公式列的别名,格式等,使其最接近报表格式。
(2) 使用向导创建报表。
A. 选择数据源¬——报表1;
B. 按一定的顺序选择需要的字段;
C. 选择要分组的字段;
D. 选择要排序的字段;(百分比、总计等也在这里选择)
E. 选择报表布局;
F. 文本框内的表达式一定要写”=”
(3) 在报表模式下也可以通过工具箱旁边的“排序和分组”按钮重新排序和分组。
8、用向导创建报表的时候不能实现列相加,如:工资 = 基本工资 + 职务津贴,因此可创建一个查询,还可以为字符型字段选择分组间隔要注意!
9、注意
(1) 为报表创建查询时是否需要进行分组(Group By),是由查询显示的字段是否有统计函数决定的,显示字段要用到统计函数,查询里用group by,否则只在创建报表时选择分组字段即可;
(2) 在做通过交叉表查询生成报表时,如果要在每行显示“小计”内容,则应该先在查询里做“横向求和”(参见第6章15点或书P96);
(3) 可以在公式中直接引用控件名称,例如求每个人工资占总工资的百分比,可以直接把文本框(控件)名写入公式,例如“=[工资]/[工资总计sum]”(前者是每个人工资的文本框名,后者是工资总计的文本框名);
(4) 报表分组显示时,要为每组内容求统计数(如小计),点击“工具栏”“排序与分组”按钮,显示组页脚-选择“是”,在这里添加;
10、当选择的字段不含数值型数据时,向导不会出现 汇总选项 按钮。
11、有时候找不到组页脚怎么办?排序和分组按钮组页眉:是;组页脚:是
12、交叉表不要求分组。先建好交叉表查询对象,然后用报表向导,一路默认就好。
纵向求和报表页脚:标签:合计 =sum([列名1]) =sum([列名2]) =sum([列名3])