表哥的Access入门:以Excel视角快速学习数据库开发(第2版)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

前言

为什么要学习数据库知识?

当你在商场或超市结账时,是否注意过收银员面前显示器上的软件?收银员利用这个软件,结合扫描设备,就可以完成扫描商品、记录销售金额、扣减库存、查看历史记录、退货、换货等操作,我们可以将这个软件称为“一个卖货的软件”,用专业一点儿的术语来说,这其实是一个典型的商品进销存软件。

你可能会想:商品进销存软件,如此高大上的名字,不是只有在企业中才用的吗?它与我们的生活有什么关系?是的,商品进销存软件确实是企业中最常用的软件之一,但其实我们的生活时时刻刻都离不开类似的软件。

商品进销存软件本质上属于数据记录和处理软件,在人工智能技术广泛应用的今天,智能设备无时无刻不在记录和处理着与你有关的数据,很多时候你甚至意识不到。

在数据库无处不在、数据思维无处不在的今天,不主动了解一点数据库知识,真的有点“OUT”了。特别是对于已经熟悉Excel的我们来说,学习点儿数据库知识,不仅可以帮助我们深刻理解这个数字时代的世界,还可以提高我们的工作效率,从而构建全新的“数据观”。

为什么要学习Access?

回到前面超市收银台的场景,利用Microsoft Office中的Access也能制作出具有类似功能的软件,并且几乎不用编写代码,即可让Office用户过把软件设计的瘾。

Access作为Microsoft Office组件之一,在众多领域中发挥着作用:利用Access可以构建中小型企业的生产、计划、库存、销售、人事管理、培训等数据库管理系统,可以开发大公司的“部门级”应用,等等。不仅如此,Access还是一款极具效力的个人工作效率提升工具,在很多Excel难以施展能力的场所,Access能轻松应对。

提到数据库,有些人(特别是对数据库一知半解的人)动不动就拿Oracle、SQL Server等大型数据库系统说事儿。笔者在这里告诉大家,如果你想学习数据库知识,Access绝对是一款优秀的入门工具,原因很简单,Access具有易获得性、易安装性及普及性。Access作为一款易学、易用、功能灵活的小型桌面数据库管理系统,其能力主要体现在以下两方面。

1.简单的操作,强大的功能

Access具有强大的可视化操作能力,这一点在所有的数据库管理系统中是领先的。Access让人印象尤其深刻的是其查询、窗体、报表及宏的可视化设计方式,它让用户无须编写代码,就能开发数据库应用程序。

由于本书的目标是使Excel用户快速入门Access数据库知识,因此很多地方会以Excel为Access的参照物进行对比。我们知道,同为Office组件之一的Excel具有灵活的数据处理和分析能力,然而其能力是有局限的。例如,对数据的规范化存储与管理、表间的同步修改及删除、无代码应用程序的开发等功能,如果使用Excel实现,则会非常麻烦,甚至无能为力;如果使用Access实现,则可以以其内置功能轻松完成。

利用Access中强大的查询功能,可以非常容易地进行各类统计分析操作,并且可以方便地组合多个相关的数据表,从而实现灵活的表间操作。此外,在处理数据的数量方面,与Excel相比,Access在分析处理几十万、上百万行数据时,速度优势相当明显,能够大幅提升工作效率。

在数据处理自动化方面,如果使用Excel,那么通常需要编写复杂的VBA程序代码来实现;如果使用Access,那么利用其自带的“宏”功能,我们几乎可以抛弃VBA,简单地以拖曳鼠标的方式,就像拼七巧板一样,将Access中的基础操作按照自定义的顺序排列起来,形成连续、定制化的业务逻辑,从而轻松实现数据业务的自动化操作,这样不但显著提升了数据库应用程序的开发效率,还大大降低了用户的学习难度。

2.使用Access可以开发软件

对没有接受过编程训练的人来说,学习编程不亚于学习“火星文”,而Access改变了这一切,让我们可以轻松开发出实用的数据库应用程序。

使用Access可以开发各种数据库应用程序,如生产管理、销售管理、库存管理等企业管理软件。利用Access,我们可以轻松地建立数据之间的关系,在不编写代码的情况下模拟真实商业活动的业务逻辑,从而设计出功能完善的软件界面。此外,我们可以通过Access的“报表”功能,设计出满足用户需求的各种格式的单据报表。通过对本书内容的学习,你会发现,Access作为一款开发数据库应用程序的“傻瓜”软件,即使是非计算机专业人员,也能快速掌握。

Access软件满足了企业管理人员的需求,使其无须学习编程语言,就能开发出实现自己管理思想的软件,并且使其能够借助软件来规范企业的业务规则,推行其管理理念。Access可以帮助非计算机专业的管理人员实现开发软件的“梦想”,使其成长为懂管理、会编程的复合型人才。

很多管理人员有绝妙的想法和创意,他们也能够很清晰地将这些想法和创意以图文形式表达出来,但由于这些想法和创意需要一些计算机技能来实现,因此束手无策,或者不得不求助“永远很忙”的信息技术(IT)部门的支援,以至于好的想法和创意长时间无法变为现实。如果他们能够花一些时间,学习一些Access知识,自己编写一个体现自己独特管理思想的软件,将这些想法和创意变成现实,岂不快哉!

Access和Excel对比,有什么优势?

读到这里,你可能会产生这样的疑问:Access的功能如此强大,为什么用户普及率远远不如Excel呢?笔者认为,造成这种现状的主要原因有以下两点。

1.“自由”软件与“强规则”软件

与Access对用户的要求相比,Excel几乎是一款“自由”软件,Excel界面对用户的操作行为几乎没有任何约束,用户可以在Excel的单元格中输入任何内容,包括文本、数字、日期等,甚至可以在Excel单元格中输入几千字的文章。

Access是一款“强规则”软件,用户在使用Access前,必须预先了解Access中必须遵守的一些“规则”。在Access数据表中,如果规定了在某一列中只能输入日期,那么该列绝对不会接收其他类型的数据,如果强行输入,那么Access会以报错的方式拒绝接收。如果规定Access数据表中的某一列中不能有重复内容出现,那么在该列中不能输入重复内容。

民间有句俗话,叫作“没有规矩,不成方圆”,正是Access中的各种“规则”,避免了数据处理活动中各种“意外”的发生。要知道,在Excel中,由于用户组织数据不规范,造成Excel报告难以理解、难以维护、难以扩展的例子比比皆是。因此,用“自律才能自由”这句话描述Access简直再合适不过了。

2.当前的Access培训存在问题

如果你恰巧在书店翻阅本书,那么,请你随手翻阅几本其他关于Access的书籍,你会发现,这些书籍基本遵循一个套路,那就是如何创建数据表、创建查询、设计窗体和制作报表。

这个套路本身没有错误,然而,大部分Access培训资料只让读者知其然,而不知其所以然;只介绍Access的操作,却不介绍这些操作背后隐藏的逻辑。按照这种教材学习,充其量只能成为Access的操作工,很难成为Access数据库应用程序的设计者。

当前的Access培训机构基本也存在同样的问题,很多培训师只是按照培训资料上的操作步骤,告诉学员先进行什么操作,后进行什么操作,一个界面控件的排列介绍几十分钟,将Access的核心内容淹没在琐碎的操作细节中,让学员感到茫然,难以抓住培训的重点。

本书特点

本书会竭力避免当前Access书籍和培训中普遍存在的问题,以案例教学的方式,通过一个简单的小饭馆数据库管理软件的开发案例,介绍如何规范Access数据、创建查询和设计窗体,以及如何制作Access报表和宏。本书不仅会介绍Access的操作,而且会详细介绍这些操作背后隐含的Access数据库的相关知识,让读者不但知其然,还知其所以然。

Access作为一款流行的小型数据库管理系统,与其他数据库管理系统相比,具有易学、易用的特点,在很大程度上避免了对用户的编程要求。但是有得必有失,Access为了保持其开发的灵活性,在开发过程中会涉及各种各样的设置选项,介绍Access中全部选项的设置方法和设置效果是庞杂且无趣的。所以,本书以一个小饭馆数据库管理软件为例,从头到尾介绍整个软件的设计过程。在设计过程中,我们只对案例中用到的设置选项进行详细介绍,从而避免打断思路、分散注意力,并且减轻学习负担。

本书不是一本大而全的Access书籍,而是一本以案例为导向,帮助读者快速了解Access功能、理解数据库思维,指导读者开发一个小型数据库管理软件的案例手册。

因为本书假设读者对Excel已经有了一定程度的了解或使用经验,所以没有像大部分Access书籍那样,一开始就引入大量的数据库专业术语,而是以读者的Excel知识为基础,逐步过渡到Access相关知识,让读者感觉自己不是在学习一门全新的技术,而是将已掌握的Excel技术“自然扩展”到Access技术,从而减轻读者的学习负担。

本书适合对Excel比较熟悉,并且想进一步利用Access技术提升个人能力的Microsoft Office技术爱好者,以及想进一步利用Access技术提高个人及本部门工作效率的职场人士阅读。此外,对于已经读过一些“Access操作手册”,但对Access还没有建立一个清晰逻辑的Access初学者,本书也非常适用。

最后,我们打个比方,如果说学习Excel是学习一项技能,那么学习Access是学习一项真正的技术。如果你已经掌握了Excel,那么,学习一些Access知识会帮助你建立全新的“数据观”,让你的数据分析和处理能力有质的飞越。

作者