Access数据库这些功能如果你掌握了,数据从此为你所用

access是什么软件系统(数据库软件access)(1)

数据表“合计”公式的应用

我们先来打开一个“学生成绩表4”,如下图:

access是什么软件系统(数据库软件access)(2)

然后点击“开始”选项卡下面的“合计公式”

在数据表的最后一行出现了“汇总”字样:

access是什么软件系统(数据库软件access)(3)

你可以在汇总一行的每个字段下选择想要的结果

对于数字格式的字段会有7种结果

而对于文本则只有一个“计数”结果:

access是什么软件系统(数据库软件access)(4)

下面是文本字段:

access是什么软件系统(数据库软件access)(5)

分别对字段班级1求“计数”

对英语求“平均分”

对语文求“最高分”

对数学求“最低分”

得到如下的结果是有21条数据

英语平均分是62.3分

语文最高分是96分

数学最低分是47分,如下图:

access是什么软件系统(数据库软件access)(6)

数据表的“筛选”功能

从2007以后版本的Access数据库开始兼容了Excel的一些基本操作功能

再加上本身的数据库功能,使得它倍受青睐

你如果想在Access数据库中,对表实现一些简单的“筛选”功能,可以不用写“查询语句”,直接用鼠标操作即可

假如你想对下面的学生成绩表进行筛选

你需要二班语、数、外成绩及格的人员数据:

access是什么软件系统(数据库软件access)(7)

通常在数据库中,你需要写“查询语句”来实现上述的任务

创建一个查询,并写上语句:

select * from 学生成绩表 where 班级=‘二班 and 英语分数>=60 and 语文分数>=60 and 数学分数>=60

access是什么软件系统(数据库软件access)(8)

点击红色叹号运行,结果如下:

access是什么软件系统(数据库软件access)(9)

可以看到,二班的学生三门课同时都及格的只有两名学生

学号分别是17号和21号,你如果不写查询语句怎么完成这个操作呢?

其实很简单,从下面能够看到,每个字段名字旁边都有一个黑色的三角号:

access是什么软件系统(数据库软件access)(10)

点击黑色小三角:

access是什么软件系统(数据库软件access)(11)

直接选中二班,点确定:

access是什么软件系统(数据库软件access)(12)

看到了吗,数据只有二班的了,接着点击英语分数旁边的黑色小三角:

access是什么软件系统(数据库软件access)(13)

界面有点不一样了,因为它是数字格式的字段

你不要一个一个地去选,比较麻烦

直接点击数字筛选器,再点击大于(实际上这是个大于等于):

access是什么软件系统(数据库软件access)(14)

输入60即可,然后确定,以此类推,语文和数据都这么弄,就得到下面的结果:

access是什么软件系统(数据库软件access)(15)

这个不用写语句,同样可以实现

所以零基础的小白学习Access数据库也是相当容易的

数据表中数据的“排序”功能

你想要对下面的学生成绩表,按英语分数由低到高进行排序:

access是什么软件系统(数据库软件access)(16)

如果你用查询语句实现,你可以创建一个查询并写上语句:

select * from 学生成绩表 order by 英语分数

这里面的order by表示由低到高进行排序:

access是什么软件系统(数据库软件access)(17)

点击红色叹号运行,结果如下:

access是什么软件系统(数据库软件access)(18)

如果你想要由高到低排序怎么办?

SQL语句这么写:

select * from 学生成绩表 order by 英语分数 desc

只是在原来的基础上多了一个“desc”,即为由高到低排序:

access是什么软件系统(数据库软件access)(19)

运行结果:

access是什么软件系统(数据库软件access)(20)

你除了写查询语句进行排序外,还可以通过简单的鼠标操作来实现数据的排序问题

打开学生成绩表,右键点击“英语分数”字段:

access是什么软件系统(数据库软件access)(21)

可以看到,有升序和降序两种选择

你只需要选择一种我们想要的排序即可,排序结果如下(由低到高排序):

access是什么软件系统(数据库软件access)(22)

这种用鼠标操作的排序是非常简单的

“left”的用法

“left”在Access数据库中表达的含义是“左截取”

也就是从左面开始截取字符,它的用法是:

left(字段名称,2),表示对某个字段进行左截取2个字符

你要对下面的“学生信息表”中的出生日期精确到月份即可,就可以用到left:

access是什么软件系统(数据库软件access)(23)

你可以创建一个查询并写上语句:

select *,left(出生日期,6) as csrq from 学生信息表

这里面的left(出生日期,6)即为对字段“出生日期”从左面开始取6位

关于“as csrq”表示一个别名,前面的文章已经讲过:

access是什么软件系统(数据库软件access)(24)

点击红色叹号运行,结果如下:

access是什么软件系统(数据库软件access)(25)

可以看到出生日期精确到月份了

从“出生日期”字段左面取了6位,这只是一个查询,并没有生成真正的数据表

如果要生成真正的数据表,需要这样:

select *,left(出生日期,6) as csrq into 学生信息表改 from 学生信息表

加一个“into 学生信息表改”即可:

access是什么软件系统(数据库软件access)(26)

运行结果:

access是什么软件系统(数据库软件access)(27)

这时你的数据库中就生成了一个实实在在的表了“学生信息表改”

“top”用法

对于下面的“学生成绩表”

你只想要显示前7行数据

在查询语句中怎么进行控制呢?

access是什么软件系统(数据库软件access)(28)

你可以创建一个查询并写上语句:

select top 7 * from 学生成绩表

这里面的top 7就是显示前7行

*就是显示所有字段的数据:

access是什么软件系统(数据库软件access)(29)

点击红色叹号运行,结果如下:

access是什么软件系统(数据库软件access)(30)

假如你只想要显示班级,学号和英语分数这几个字段

应该这么写:

select top 7 班级,学号,英语分数 from 学生成绩表

access是什么软件系统(数据库软件access)(31)

运行结果:

access是什么软件系统(数据库软件access)(32)

“文本类型”转换为“时间类型”

下面是学生的入学时间表

为了方便录入数据,录入人员在“入学时间”字段录入的是文本类型的数据

你怎么才能把它转换为真正的日期型呢?

access是什么软件系统(数据库软件access)(33)

第一步:加一个“入学时间1”字段,类型选择“日期/时间”型:

access是什么软件系统(数据库软件access)(34)

可以看到“入学时间1”字段,这个字段的类型就是“日期/时间”型的:

access是什么软件系统(数据库软件access)(35)

第二步:创建查询,写语句:

UPDATE 入学表SET 入学时间1 = CDATE(LEFT(入学时间,4)&"/"&MID(入学时间,5,2)&"/"&RIGHT(入学时间,2))

access是什么软件系统(数据库软件access)(36)

CDATE函数就是将文本转换为日期,里面由三部分组成,每个部分用”/”隔开:

1、LEFT(入学时间,4):表示年,用left实现,左边截取4位

2、MID(入学时间,5,2):表示月,用mid实现,从每5位开始截取2位

3、RIGHT(入学时间,2):表示日,用right实现,右边截取2位

“&”用于连接每一部分与”/”。

第三步:运行结果:

access是什么软件系统(数据库软件access)(37)

可以看到入学时间1字段变成了日期型的

SQL查询“不重复”数据

对于下面的“学生成绩表7”,里面有一些重复的数据

你怎么来查询不让它重复呢?

access是什么软件系统(数据库软件access)(38)

你可以创建一个查询并写上语句:

select distinct 班级,学号,语文分数,数学分数from 学生成绩表7order by 学号

distinct就是显示唯一的数据值,后面接想要的字段名称即可

order by的作用就是按学号进行升序排序

access是什么软件系统(数据库软件access)(39)

运行,结果如下:

access是什么软件系统(数据库软件access)(40)

除了这种方法,还有一种方法同样可以实现这种操作

SQL语句改为:

select 班级,学号,语文分数,数学分数from 学生成绩表7group by 班级,学号,语文分数,数学分数order by 学号

access是什么软件系统(数据库软件access)(41)

运行结果:

access是什么软件系统(数据库软件access)(42)

SQL查询“between and”的用法

SQL查询语句中“between and”表示条件的范围,一般跟在where的后面

下面是“学生成绩表”

你想要查询英语分数在40分到70分之间的学生:

access是什么软件系统(数据库软件access)(43)

你可以创建一个查询并写上语句:

select * from 学生成绩表 where 英语分数 between 40 and 70”

这里面的between…and就表示在哪个区间:

access是什么软件系统(数据库软件access)(44)

运行结果如下:

access是什么软件系统(数据库软件access)(45)

查询语句“字符匹配”

下面是所有学生成绩表:

access是什么软件系统(数据库软件access)(46)

你想要把所有姓“张”的学生的成绩提出来,应该怎么办?

创建一个“查询”并写上语句:

select * from 学生成绩表 where 姓名 like '张*'

access是什么软件系统(数据库软件access)(47)

从查询语句可以看出“like”可以实现字符匹配

like ‘张*’字符匹配,“*”代表通配符

你想要提取姓“张”的学生,所以“张”字开头,后面用“*”代替后面的名字

运行结果如下:

access是什么软件系统(数据库软件access)(48)

如果,你想要把所有学生名字中带“冰”字的学生成绩提出来,应该怎么办?

创建一个“查询”并写上语句:

select * from 学生成绩表 where 姓名 like '*冰*'

access是什么软件系统(数据库软件access)(49)

前后都加通配符,表示“冰”字可以在名字中的任何位置

运行结果如下:

access是什么软件系统(数据库软件access)(50)

如何用not like 来提取不包含这些字的学生

看下面这个语句:

select * from 学生成绩表 where 姓名 not like '张*'

access是什么软件系统(数据库软件access)(51)

运行结果如下:

access是什么软件系统(数据库软件access)(52)

当然,如果想要提名字最后一个字是“玲”字和最后一个字不是“玲”字的学生成绩,也很容易

SQL查询语句【in】和【null】的用法

1、in的用法

下面是学生成绩表:

access是什么软件系统(数据库软件access)(53)

你只要一班和二班学生成绩信息,创建一个查询

查询语句为:

select * from 学生成绩表 where 班级 in('一班','二班')

in】的用途就是把班级限制在(‘一班’,’二班’)这个集合中

下面就是集合限制的查询语句:

access是什么软件系统(数据库软件access)(54)

当然,集合里面是可以有多个元素的,也可以加上三班或者四班

运行结果如下:

access是什么软件系统(数据库软件access)(55)

显示的查询结果能够看出,只有“一班”和“二班”的学生成绩

那如果在“in”的前面加个“not”表达什么含义呢?看下面的【not in】的用法:

查询语句:

select * from 学生成绩表 where 班级 not in('一班','二班')

语句中多了一个“not”:

access是什么软件系统(数据库软件access)(56)

运行结果如下:

access是什么软件系统(数据库软件access)(57)

2、null的用法

从下面的学生成绩表中可以看到,有些学生的班级信息漏掉了

你要把这些学生找出来

access是什么软件系统(数据库软件access)(58)

看这个查询:

select * from 学生成绩表 where 班级 is null

access是什么软件系统(数据库软件access)(59)

运行结果:

access是什么软件系统(数据库软件access)(60)

那么【is not null】就表示不为空:

select * from 学生成绩表 where 班级 is not null

access是什么软件系统(数据库软件access)(61)

运行结果:

access是什么软件系统(数据库软件access)(62)

用【and】进行多条件查询实例

下面是一个“学生成绩表”:

access是什么软件系统(数据库软件access)(63)

想要在学生成绩表中提取一班、二班和三班学生的三科成绩

这些学生英语不及格,但数学成绩及格

语文分在50-70分之间,并且名字中不能包括“冰”字

创建一个查询:

select * from 学生成绩表 where 班级 in('一班','二班','三班') and 姓名 not like '*冰*' and 英语分数<60 and 数学分数>=60 and (语文分数 between 50 and 70)

access是什么软件系统(数据库软件access)(64)

这个SQL查询语句看着有点长,实际上并不复杂:

条件1,班级 in(‘一班’,’二班’,’三班’),这个用到了“in”,表示所在的集合;

条件2,姓名 not like ‘*冰*’,这个用到了“not like”,表示不包含;

条件3,英语分数<60,这个用到了“<”,表示小于;

条件4,数学分数>=60,这个用到了“>=”,表示大于等于;

条件5,语文分数 between 50 and 70,这个用到了“between…and”,表示介于两个数之间。

同时满足这一个条件,最后的查询结果是:

access是什么软件系统(数据库软件access)(65)

有9个学生满足以上五个条件。

其实,在条件1中,你还可以这样写:

条件1,班级 not in(‘四班’,null)

access是什么软件系统(数据库软件access)(66)

运行的结果如下,查询的结果也是这9个学生:

access是什么软件系统(数据库软件access)(67)

用【or】进行“并列或”的条件查询

下面是一个“学生成绩表”:

access是什么软件系统(数据库软件access)(68)

想要在学生成绩表中提取一班和三班学生的三科成绩

这些学生三门课只要有一门不及格就提出来

并且这些学生只能姓“张”或者姓“刘”

创建一个查询:

select * from 学生成绩表where 班级 in('一班','三班') and (姓名 like '张*' or 姓名 like '刘*') and (英语分数<60 or 数学分数<60 or 语文分数<60 )

access是什么软件系统(数据库软件access)(69)

来分析一下:

条件1,班级 in(‘一班’,’三班’),这个表示一班和三班的都提出来;

条件2,(姓名like ‘张*’ or 姓名like ‘刘*’),这个表示姓张的或者姓刘的学生都提出来;

条件3,(英语分数<60 or 数学分数<60 or 语文分数<60 ),这个表示只要学生有一科没及格就提出来。

以上的【or】都表示“或者”,最后的查询结果是一共有16个学生符合条件:

access是什么软件系统(数据库软件access)(70)

你只要用括号把大的条件分清,再用or或者and去限制小的条件,基本是不会出错的。

用“rnd()”函数产生随机数

下面是一个“学生成绩表”

已经添加了三个字段,都是数字格式的,用于生成三组不同类型的随机数字

还添加了一个自动编号格式的ID字段:

access是什么软件系统(数据库软件access)(71)

至于如何添加字段,可以翻看以前的文章

然后创建一个查询,并写上SQL查询语句:

update 学生成绩表 set 随机数1=rnd(id)

access是什么软件系统(数据库软件access)(72)

以前讲过update set的用法,它是对表进行更新操作,也就是修改表

来分析一下随机数字是怎么产生的:

随机数1=rnd(id) 表示rnd(id)产生一组0-1之间的随机数

并放到随机数1这个字段

Access数据库很特殊,这里面用到了id字段

它就是一个自动编号字段,运行结果如下:

access是什么软件系统(数据库软件access)(73)

那如何产生0-100之间的随机数字呢?请看下面的语句:

update 学生成绩表 set 随机数2=rnd(id)*100

将rnd(id)乘以100,表示0-100之间的随机数字,结果如下:

access是什么软件系统(数据库软件access)(74)

上面产生的随机数都是从0开始的

那么,如何产生两个固定数字之间的数呢?

假如你想要50-100之间的数呢?

请看下面的语句:

update 学生成绩表 set 随机数3=rnd(id)*50+50

rnd(id)是0-1之间

rnd(id)*50就表示0-50之间

rnd(id)*50+50就表示50-100之间

运行结果如下:

access是什么软件系统(数据库软件access)(75)

实现字段数据的“自动计算”

下面是一个“学生成绩表”

有语、数、外三科成绩:

access是什么软件系统(数据库软件access)(76)

你想要加一个总分,实现字段的自动计算

第一步:打开表,点击设计视图:

access是什么软件系统(数据库软件access)(77)

增加一个总分字段,数据类型选择“计算”:

access是什么软件系统(数据库软件access)(78)

在上面的空白处键入“[英语分数]+[数学分数]+[语文分数]”

所表达的含义是新增加的“总分”字段的内容是“语数外三个字段的和”:

access是什么软件系统(数据库软件access)(79)

点击确定后,回到数据表视图下

可以看到多了一个“总分”字段,并且自动计算出了总分:

access是什么软件系统(数据库软件access)(80)

假使,你对期中的一科成绩进行修改,那么总分会自动更新结果:

access是什么软件系统(数据库软件access)(81)

可以看到英语分数修改了,总分跟着就自动计算

导入VF数据库时出错的处理方法

有一些VF数据表需要导入Access数据库:

access是什么软件系统(数据库软件access)(82)

你想要把它们导入到Access数据库

第一步:点外部数据选项卡下的其他,选择最后一项dBASE文件:

access是什么软件系统(数据库软件access)(83)

选择VF数据库所在的路径后,双击文件即可:

access是什么软件系统(数据库软件access)(84)

确定后,出现了下面的错误信息“外部表不是预期的格式”:

access是什么软件系统(数据库软件access)(85)

什么原因呢?

这是因为Access数据库并不识别现有的VF数据库格式

只需要把VF数据库另存一下,改一下格式就可以了

首先,我们把VF数据表打开,点击文件,选择导出:

access是什么软件系统(数据库软件access)(86)

确定后,出现下面这个界面,将默认的VF3.0格式改成下面的Dbase 格式:

access是什么软件系统(数据库软件access)(87)

确定后可以看到再次导入VF数据时,弹出了下面的界面:

access是什么软件系统(数据库软件access)(88)

说明你已经成功导入了这个表:

access是什么软件系统(数据库软件access)(89)

轻松实现对Access数据库的基本设置

第一步,双击打开你的数据库:

access是什么软件系统(数据库软件access)(90)

第二步,点击“文件”选项卡,选择“选项”:

access是什么软件系统(数据库软件access)(91)

选择选项后,会弹出以下界面:

access是什么软件系统(数据库软件access)(92)

第三步,对常规、当前数据库、数据表和对象设计器等四项进行设置:

1、常规:

access是什么软件系统(数据库软件access)(93)

选择蓝色后,点击确定,可以看到数据库的颜色变啦:

access是什么软件系统(数据库软件access)(94)

变成蓝色了,你也可以选择黑色:

access是什么软件系统(数据库软件access)(95)

2、“当前数据库”设置:

access是什么软件系统(数据库软件access)(96)

选择选项卡式,你的数据表可以很容易的找到:

access是什么软件系统(数据库软件access)(97)

下面这是重叠式的:

access是什么软件系统(数据库软件access)(98)

3、“数据表”设置:

access是什么软件系统(数据库软件access)(99)

你可以对数据表进行基本的设置

你选择凸起的效果,字号大一点并加粗:

access是什么软件系统(数据库软件access)(100)

4、“对象设计器”设置:

access是什么软件系统(数据库软件access)(101)

你可以对默认的字段类型和字段大小等进行修改

原来是文本的可以设置数字的

这样你增加一个字段后,它的类型就自动是数字的:

access是什么软件系统(数据库软件access)(102)

总结

1、了解Access数据库

Access是Microsoft公司推出的Office系列办公自动化软件的一个组件,是一个小型的数据库管理系统。它广泛应用于财务、行政、金融、统计、审计和科研项目等众多领域。

2、创建Access数据库

“开始”→“所有程序”→“Microsoft Office” →“Microsoft Access 2010” →启动Access 2010:

access是什么软件系统(数据库软件access)(103)

在右下角,你可以选择将该数据库保存的路径及文件名称:

access是什么软件系统(数据库软件access)(104)

3、创建“数据表”

打开空的数据库→创建→表

创建了名字为表1的表,你可以给它改名字

access是什么软件系统(数据库软件access)(105)

你可以直接将Excel表里面的数据粘贴过来:

access是什么软件系统(数据库软件access)(106)

粘贴之后给你的表起个名字:

access是什么软件系统(数据库软件access)(107)

当然了,也可以导入其它格式的数据到你这个数据库里面

4、创建“查询”

创建→查询设计→单击右键→SQL视图

可以写查询语句了:

access是什么软件系统(数据库软件access)(108)

5、查询分类

分两大类:

一是选择查询

二是操作查询

access是什么软件系统(数据库软件access)(109)

显示的图标都不太一样,不同图标表示不同种类的查询,前面的文章讲的很详细。

6、常用的SQL查询语句写法

一是(选择查询):

Select * from 学生成绩表 where 英语分数>=60

二是(更新查询):

update 学生成绩表 set 英语分数=英语分数+5

三是(生成表查询):

Select 学号, 数学分数 into 数学成绩表 from 学生成绩表

四是(追加查询):

Insert into 一班成绩 select * from学生成绩表

五是(删除查询):

delete * from 一班成绩 where 班级 = '二班'

7、常用的函数用法。

Access数据库中一些常用的函数,如:avg()函数、sum()函数、count()函数、max()函数、min()函数、left()函数、cdate()函数