第1课我讲了Access数据库的作用和基本界面,本讲书接上回,我来讲一讲Access数据库的五大组件以及各组件的作用 。
首先我们再不厌其烦的重复一遍Access数据库的五大组件以及主要功能:
1.Access数据库5大组件
表:存储数据
查询(SQL):查询分析数据
窗体:做呈现和交互
报表:做呈现和交互
VBA(宏):完成自动化计算和各种动作
这五个组件排名不分先后,都很重要,哪怕是报表都很重要(报表最能体现了Access数据库的风格和特色)
表 。表不仅是Access数据库的基础,同时也是MySQL、SQL Server等专业数据库的基础 。数据库、数据库,都是先有数据后有库 。任何的数据都储存在表里,没有表就没有数据库 。
文章插图
空白表
Access所有的操作,其实本质上都围绕着对表的增删改查展开,尤其是对表的查询,用得最多 。
在我的实操中查询表占90%以上的时间,增删改在单机软件里用的倒是不多,互联网应用的多一点 。
查询(SQL) 。查询是Access的主要计算手段 。单机数据库的核心,其实就是对表的查询 。查询的操作,在Access中是可视化的,这也是Access数据库的优势之一 。
文章插图
空白查询
随着对Access数据库学习的深入,查询也会越来越复杂,但主要技术原理不外乎左、右链接、相等链接、计算字段几种形式 。在数据库基本原理这一点上,Access和SQL Server等专业数据库几乎没有区别,只是使用场景不同而已 。
Access数据库面对一些复杂的查询,往往还需要VBA的配合使用 。这又是一个非常深入的专门领域,是高级使用者研究的领域 。
我近期给一个河南高中做了一个老师的课时费统计报表软件,由于这所学校的课时费计算方式很复杂,因此Access遇到的查询是比较繁琐的,其中也用到了很多VBA技术 。
窗体 。多数老铁认识宇哥应该是通过宇哥发表的各种动态视频认识的,这些动态视频其实主要是窗体的操作演示 。
文章插图
空白窗体
很多技术培训老师,是很不重视窗体演示的,有些技术很好,但是展示的很拉垮 。。很多学员也对窗体嗤之以鼻,这种态度是不对的 。
再好的技术也需要展示、也需要进行界面操作的设计和优化,忽略窗体功能设计和优化的做法是不对的 。
好的Access窗体应该一看就懂、一用就会,同时便于理解和数据追溯 。但是好的窗体看起来简单,想要设计的功能完备、线条简单还需要一定的审美基础,不是那么容易掌握 。
报表 。报表功能是Access数据库的特色功能,其重要地位不容小觑 。
文章插图
空白报表
我在2022年之前几乎不怎么用Access的报表功能,但是2022年开始,Access2021版已经支持窗体嵌入报表,报表的威力一下子倍增,不仅能够导出PDF,还能起到数据仪表盘的作用 。
尤其是报表可以有层次的展示大量的统计效果,而窗体和查询表现形式相对单一,是不具备报表这样的功能的 。因为报表功能简洁且好看,所以我现在做每一个Access实例,基本都要上几个报表功能 。
VBA(宏) 。VBA是Access数据库的外延,是一门独立的编程语言,不仅是严谨的计算机编程语言、更是一门艺术,需要想象力 。
文章插图
VBA界面
VBA的技术文档相当之厚,而且并不完全适合Access入门水平的学员 。待学员学完Access课程之后(包括一些初级VBA技术),再进行专项学习为好 。
VBA和VB的语法基本相同,但是由于面向对象不同,框架是有所区别的 。面对数据处理的情况,用Access的VBA功能好一些 。如果做封装软件那么直接用VB会更简便 。
2.Access操作要快、同时需要5个组件配合
需要强调一下,Access数据库是给办公人员用的,不是给专业编程老哥用的 。Access的操作和Excel类似,强调针对办公场景的小快灵,不能做拖泥带水、一个功能折腾好几天的专业应用 。
Access是办公软件,很强调办公二字 。如果脱离了办公场景,Access技术势必会成为无根之木无缘之水,发挥不出它的作用 。而办公场景更强调的是落地和解决问题,而且解决的时间不能太长 。
虽然Access的技术比Excel要难一个层级,但是也不应该把Access用的过于呆板 。Access的使用场景根Excel是一模一样的 。使用Access需要具备和Excel一样拿来就用的熟练程度,这就对使用者对Access的熟悉度提出了更高的要求 。
宇哥在做Access数据库的时候,发现很多学员其实是有一定的Access理论基础的,有的在大学学过、有的在免费视频里学过 。但是这些有基础的学员无一例外的没有进行Access的综合应用训练,不知道如何入手设计Access软件,理论基础尚可、实操能力很弱 。
而Access数据库操作是一个有机的整体,这是Access跟别的编程框架不太一样的地方 。操作Access数据库有点像开车,五个部分分别代表油门、离合、挡位、方向盘、后视镜 。
你操作Access就要把自己想象成个驾驶员,车辆要起步需要手脚眼配合,松离合放手刹给油,同时要打转向配合眼睛观察,才能把车开走 。
Access的操作原理也是一样的,它的应用以结果为导向(有点像开车),用结果来要求各个功能怎么配合,而不能单纯的学习某一个单项技术,好比学习开车不能单学踩油门、单学挂档、单学踩离合一个道理 。
目前市面上的Access培训,最大的问题就是理论讲的多,尤其是表讲的太多,纯理论的部分太多,落地场景太少,各部分的配合讲解太少,大量的理论知识堆起,很容易让初学者云里雾里 。更好的讲解方法是一节课掌握一个案例,通过实操案例慢慢的植入Access各项技术,让学员学一个案例就扎扎实实的有一点进步 。这是我的教学理念 。
下面会以案例的形式,详细讲讲Access各个组件是如何配合的 。
3.通过案例熟悉Access的各个组件
作为一名技术讲师,我个人是不赞成目前主流的Access数据库学习顺序:表、查询、窗体、VBA,这些组件虽然都很重要,但是割裂来学习的效果并不好 。
由于Access技术是有机的整体,因此学员在了解一些基础数据库技术之后,应该尽快开始模仿常用的Access查询窗体,亲手做一下功能完备的一个小软件 。
比如非常简单但又非常实用的分割窗体,左图右表,做起来非常简单,步骤一共就两步,一步是准备表,第二步就是直接生成窗体,分割窗体就做成了 。最后在美化一下,就是一个很实用的窗体 。
文章插图
分割窗体演示
文章插图
分割窗体后台
分割窗体可以当数据录入窗体、可以当通讯录、可以当学生花名册,用途相当广泛 。可以说拿来就能用,但是很多教材根本不讲 。厚厚的外国版《Access数据库宝典》,技术那叫一个翔实,但翻了一半也没见分割窗体的只言片语…
分割窗体需要了解表、窗体,要知道二者怎么发生关系,数据源是怎么回事,要知道表的数据怎么搞到窗体里 。通过做分割窗体,能熟悉很多功能,比死磕课本要学的快得多 。
还有一些案例很适合入门者学习,比如单日期查询的案例 。
文章插图
单日期查询演示
我们有这样一个需求,给你一张销售表,上面有三个字段:销售员、销售时间、销售量 。要求你做一个窗体,能够查询不同时间或者不同销售员的销量,如果能做汇总就更好了 。
那么我们首先就要思考,怎么来完成这个功能?
首先就是要做一个窗体,上面要做一个下拉菜单,把日期塞进去,
然后我们要做一个查询,窗体选择一个日期,查询就要相应的做一个筛选 。
第三步要生成一个子窗体,把这个子窗体搞到主窗体里 。
最后要通过VBA或者宏实现自动化功能 。
你看,这样一个单日期查询需求,可以说一点都不简单,要熟悉了解窗体、控件、查询、子窗体、VBA、宏等一系列技术 。跑通了这样一个单日期查询,等于把上面的技术都练了一遍 。是不是跟学习开车很像?
通过案例这样的学习效果是非常快的 。宇哥培训的学员都是练过这样的专项训练,跑通了一个查询,就基本了解Access是做什么的了 。
多说一句,学习Access数据库的最大好处,还真不仅仅是能入门VBA,学一门办公软件,它更大的好处是帮我们找到对于软件开发的这个feel,能够用一个整体视角审视软件开发和我们自己的业务流程 。
有人说Access数据库是迷你ERP,这个外号不是凭空回得来的 。
第二课结束 。
课后题:
我们有这样一个需求,给你一张销售表,上面有三个字段:销售员、销售时间、销售量 。
要求你做一个窗体,能够查询两个日期之内的销量情况 。比如筛选2022年7月1日到2022年7月8号之间的销售量 。要用到VBA、查询、窗体技术哈 。
动手做一做哈~没有思路的评论区留言领取这个案例 。
文章插图
【一文教你学会用access数据库 access数据库入门教程】 日期区间查询案例
推荐阅读
- 办理遗嘱公证有哪些条件
- 头发一个月可以长多少厘米 头发一个月可以长多少
- 一件代发哪个平台最好
- 手游cf一打五的那种房间怎么创? cf创建房间
- 山东理工大学是一本吗 山东理工大学的介绍
- 快速变成漫画腿,变成漫画腿只需要一个动作
- 淘宝网店充值怎么开
- 糯米这样做一辈子都吃不腻,糯米还能这样做味道竟然超级赞
- 南水北调中期一线工程正式通水 南水北调工程全面通水8年
- 宝宝肚子受凉补救方法 这三种方法可以一试