面向小型公司的数据库教程-全-
面向小型公司的数据库教程(全)
一、数据如何让您的小型企业受益
收集和分析数据对您的小型企业非常重要,因为它可以提高效率和盈利能力。数据可以记录一直在发生的事情——谁是你的客户,他们的人口统计是什么,他们买了什么。它可以让您发现趋势,例如,您的客户最喜欢的产品。数据中存在对您的业务非常重要的隐藏模式,例如一起销售的多组产品。数据可以提供一个可以搜索的档案。
当小企业的人发现他们的数据可以给他们带来巨大的变化时,他们通常会着迷于了解更多。事实是,对于小企业来说,已经收集了有关其运营的许多方面的数据。所有企业都收集收入和支出的详细信息,以满足税务要求。许多企业收集客户的姓名和地址,以便与他们联系。
这本书的目的是证明你正在收集的数据有远远超出其最初目的的好处。这本书将解释你的数据的价值,并告诉你如何充分利用它。这本书旨在介绍数据库和进一步参考的路标,如果这些是必要的。
首先,我假设您对文字处理和电子表格等软件包有基本的了解,但对数据库完全没有经验。此外,我意识到大多数小型企业并不只有一个人专门处理他们的数据,他们的大多数员工在公司中都有几个角色。我还假设您的小企业受到小预算的限制。
一段时间以来,您可能一直在无效地使用您的数据,而没有意识到它的全部潜力。如果是这样的话,你会很高兴在本书中看到改进的见解和数据分析。此外,如果您只是简单地存储数据,而不是在绝对必要的情况下使用它,您会惊喜地发现,学习处理和分析数据的技术的第一步也是最重要的一步就在您的掌握之中。
你的企业可能处于几个阶段中的一个阶段。你可能刚刚起步,渴望确保自己完全掌握最新技术。你可能已经经营了一段时间,并希望鼓励进一步发展。或者,你的企业可能正经历着具有挑战性的时期,正在寻求帮助向前发展。无论您的环境如何,您都会发现您的数据会对您企业的盈利能力产生重大影响。
什么是数据和数据库
以下部分描述了数据和电子表格的含义。通过使用电子表格作为起点来介绍数据库。
数据
数据可以采取多种形式,包括数字、文本、图像、超链接和声音。数据可以是关于任何主题的,也可以是关于多个主题的。
电子表格
如前所述,我假设您熟悉电子表格,一些常见的例子有 Microsoft Excel、LibreOffice Calc 和 Google Sheets。我将使用电子表格作为描述数据库的起点。
电子表格和数据库都用来存储和管理数据。表达这种区别的一个非常简单的方法是把电子表格看作一个大型复杂的可编程计算器,而把数据库看作一个高效的电子文件系统,它能使数据很快被查阅和分析。电子表格和数据库的主要区别在于它们存储和操作数据的方式,以及通常涉及的数据量。
电子表格将数据项(例如,数字、文本和超链接)存储在单元格中,多个单元格由行和列的系统来表示。一个单元格中的值可以通过公式定义的关系与其他单元格中的值相关联。
电子表格最严重的两个问题如下:
- 存储重复数据:相同的数据可能存储在多个电子表格中。如果您需要对数据进行更改,可能需要在存储数据的每个位置进行相同的更改,从而增加了出错的风险。
- 查找数据:在电子表格中查找一个数据项可能需要扫描许多列。
Hypothetical Example of a Small Business: Cards for Everyone Inc.
本书使用了三个案例来说明:一个小型工程公司,一个小型律师事务所和一个小型非营利组织。它们将在接下来的三章中介绍。此外,您还将读到一个假设的例子,描述了一家名为 Cards for Everyone Inc .的小型在线企业,该企业在线销售一系列卡片。
Cards for Everyone Inc .从一系列供应商处购买卡片,并在其网站上展示图片进行销售。网站是由一个承包商设计的,这样公司的员工就可以自己更新了。这家企业有三名员工:帕特、泽夫和利昂娜。
经理 Pat 有许多角色,包括购买供应品和营销业务。Pat 必须随着库存水平的变化随时更新网站。
Zeph 和 Leona 是处理订单的助理,他们在仓库里找到卡片,然后把它们放进信封里分发。当新货到达时,他们把它放在储藏室,并把详细情况传给帕特,以便她可以更新网站。
数据库解决了这两个问题。通过将数据分成表格(由行和列组成)来最小化重复数据项,这样,在理想情况下,每个数据项只存储一次。表之间定义的关系使得非常高效的数据检索成为可能:它们将数据链接在一起,使检索变得高效。第六章更详细地解释了电子表格和数据库的优缺点。
下一节给出了 Cards for Everyone Inc .使用的数据库示例。
Cards for Everyone Inc .使用的数据库。
Cards for Everyone Inc .中给定客户的典型数据是他们的姓名、地址、电话号码和电子邮件地址。表 1-1 显示了包含三个客户数据的示例数据库表。每个客户在表中都被分配了一行,也称为记录。每条记录分为五列,每列代表记录的一部分(即客户 ID、姓名、邮政编码等)。).每个客户记录都有一个唯一的客户标识号,称为客户 ID。任何两个客户都不能有相同的客户 ID,从而避免重复。
表 1-1。
Basic Customer Database Table
| 客户 ID | 西方人名的第一个字 | 姓 | 邮政区码 | 电话 | 电子邮件 | | --- | --- | --- | --- | --- | --- | | one | elizabeth 的昵称 | 加西亚 | 米 48823 | 517-xxx-xxxx | lgarcia@hotmail . com | | Two | 约翰 | 威廉姆斯 | 或者 97062 | 503-xxx-xxxx | Jwilliams@gmail.com | | three | 史蒂夫(男子名) | 琼斯 | FL 33901 | 239-xxx-xxxx | Sjones@aol.com |Cards for Everyone Inc .的其他数据库表包含产品、供应商和发票的详细信息。与客户一样,每个产品、每个供应商和每张发票在各自的表中都有一个唯一的标识号。为了帮助建立关系,标识号可以出现在多个表中。在这一点上,这些表格仅用于说明目的;第七章包含了更多关于它们的含义和构造的细节。表 1-2 显示了每个人卡公司的五种产品的表,产品 ID 在第 1 列。请注意,该表在第 2 列中有一列是供应商的标识号。
表 1-2。
Basic Product Database Table
| 产品 ID | 供应商 ID | 产品名称 | 种类 | 价格(美元) | 可用数量 | | --- | --- | --- | --- | --- | --- | | Eleven | One hundred | 猫 | 生日 | Two | five | | Twenty | Two hundred | 玫瑰 | 谢谢你 | Three | eight | | Twenty-three | Two hundred | 船 | 生日 | Two point five | Ten | | forty-two | Three hundred | 心 | 情人 | Four point five | nine | | Sixty-one | Three hundred | 兔子 | 新生婴儿 | Five | Eleven |表 1-3 中给出了假设供应商的列表。
表 1-3。
Basic Suppliers Database Table
| 供应商 ID | 供应商名称 | 邮政区码 | 电话 | 电子邮件 | | --- | --- | --- | --- | --- | | One hundred | 特殊场合 | IA 52241 | 319-xxx-xxxx | admin@specialoccasions.com | | Two hundred | 旧的最爱 | CA 92591 | 503-xxx-xxxx | office@oldfavorites.com | | Three hundred | 手工卡片 | FL 33351 | 954-xxx-xxxx | enquiries@handmadecards.com |五个发票记录如表 1-4 所示,对应的客户 id 在第 2 列。
表 1-4。
Basic Invoices Database Table
| 发票号 | 客户 ID | 日期 | 金额(美元) | | --- | --- | --- | --- | | One thousand and one | one | 11/4/14 | ... | | One thousand and two | Two | 11/4/14 | ... | | One thousand and three | three | 11/4/14 | ... | | One thousand and four | Two | 12/14/14 | ... | | One thousand and five | one | 12/18/14 | ... |目前,这四个表只不过是四个独立的数据电子表格,如图 1-1 所示。
图 1-1。
Separate Database Tables for Cards for Everyone Inc.
数据库使用每个表的唯一标识符将这些表及其数据链接在一起,如图 1-2 所示。如图 1-2 所示的数据库结构可以防止你不得不重复存储数据,冒着打字和不匹配错误的风险。数据库非常适合将数据集中在一起,分离主题,并实现高效的存储、更新和检索。
图 1-2。
Linked database tables for Cards for Everyone Inc.
可以通过三种主要方式查看最终的连接数据结构:
查询:这是一个关于数据库中数据的问题,来自一个或多个表或来自其他查询。查询可用于筛选数据、执行计算、汇总数据以及执行管理任务。例如,当订单到来时,知道库存中是否有足够的产品,以及如果没有,从哪里订购更多的产品将是有用的。这包括同时查询 Products 和 Suppliers 表。查询可能非常复杂,跨越许多表。图 1-3 显示了来自 Cards for Everyone Inc .的一个非常简单的数据库查询。该查询统计了表 1-2 中每个类别的卡片数量。
图 1-3。
Simple query for Cards for Everyone Inc.
表单:这些是纸质表单的电子版本,是可视化数据的有用手段。它们由数据库的一个或多个表或一个或多个查询组成,可用于输入、编辑或显示数据。表单是一种通过筛选搜索数据的有用方法。例如,表单可以用作发票,汇集客户和产品的详细信息,可以编辑和搜索(基于客户、购买的产品等)。)图 1-4 显示了一个非常简单的 Cards for Everyone Inc .表单,它提供了一种查看 Customers 表中数据的方法和一种输入数据的手段。与直接在表中输入数据相比,表单是一种更加用户友好的方式。
图 1-4。
Sample form for Cards for Everyone Inc.
报告:它们使文档能够从数据库表或查询中设计出来,可以很容易地以电子形式共享或在远离计算机的地方查看。报告可以用来总结哪些产品卖得好,哪些客户一直在买。图 1-5 显示了来自图 1-3 的查询数据的报告。
图 1-5。
Sample report for Cards for Everyone Inc.
图 1-2 中所示的关系可以通过使用主选项卡、查找公式、交叉引用的电子表格和 Visual Basic 编程在电子表格中处理。只要连接保持最新,这就可以工作。然而,在引入新产品的过程中,由于需要检查数据以确保一切都正确匹配,可能会出现问题。
Note
在本书中,我默认使用关系数据库,因为它们是最流行的。还有其他的数据库,如面向对象的、分层的、文件的和网络的。
数据可以为您的小型企业带来的好处
如果对您的小型企业没有最终的好处,那么花时间创建和填充数据库是没有意义的。下面几节讨论了使用数据库可以带来的各种好处。
提供对客户的深入了解
通过瞄准利基市场,小企业可以有效地与大公司竞争。数据有助于你更好地了解你的客户,更准确地识别这个利基市场。通过存储、分类和过滤关于你的客户的数据,有可能更多地了解最有利可图的客户。小企业非常适合与客户和供应商建立个人关系。有效利用您的数据可以为这些优势增加额外的权重。与你的客户保持密切联系不仅有助于你的企业留住他们,还可以帮助你为未来的营销建立类似客户的档案。
更深入地了解你的销售
通过收集关于你的产品和顾客的信息并把它们放入数据库,你可以看到哪些产品卖得好,哪些顾客会回来重复订购,哪些商品卖得不好,等等。手动完成这些功能非常耗时。
例如,了解你的企业拥有的前 50 名客户可以让你为这些人/企业创建特定的优惠,或者为这些忠诚的客户创建奖励计划。
有效的库存控制
只要浏览一下您的数据库,您就可以看到哪些商品几乎缺货,以及从哪里订购更多的商品。该数据库还可以在供应短缺时提醒您,这样您就可以在必需品告罄之前订购更多。
应对变化
一个组织良好的数据库可以帮助企业应对变化并做出决策。如果可以通过数据库中的链接表获得涵盖许多业务运营的数据,经理们就可以在做出决策之前对业务的当前状态有一个全面的了解。这一点对于小企业来说尤为重要,因为小企业通常比大企业更能灵活应对变化。这通常是因为小企业缺乏层级。
数据分析
数据库的查询和报告功能使它们成为分析数据和预测未来趋势的宝贵资源,因为它们可以将整个小型企业的数据汇集在一起。例如,一份报告可能显示,在电子邮件促销后,某些产品的销售额增加了,而在店内促销后,其他产品的销售额增加了。
提高数据的安全性
安全控制和授权可以在数据库中实现,方法是将敏感数据移动到一个单独的表中,该表具有自己的授权控制。当数据库用户登录时,他们只能访问他们有权查看的数据。例如,可能存在对诸如雇员工资等字段的限制,这些字段只能由直接处理工资单的人员查看。
为什么一些企业选择不使用他们的数据
小型企业忽视以上一节讨论的方式将他们的数据用于有益用途的原因是多种多样和复杂的。本节的目的是帮助你理解为什么你还没有找到利用你的数据的动机,而不是通过任何判断。这样做的目的也是鼓励你远离任何犹豫。
太贵了
许多小企业预算很少,认为数据库太贵。他们认为他们必须付钱给专家来创建数据库。然而,该软件本身并不昂贵,而且开源版本也很常见。例如,您正在使用的 MS Office 版本可能已经提供了 MS Access。而且一些开源软件套件有数据库包可用,比如 OpenOffice 和 LibreOffice。
还可能会担心需要新的昂贵的硬件。有许多选择,尤其是存储在云中的数据库,这需要最小的投资和对办公硬件的维护。云计算在第十八章中讨论。
这太具有破坏性了
如果一家公司运行顺利,可能会有人担心实施数据库会破坏现状,导致业务下滑。可能有人担心会有一段时间无法接受任何订单。
从其他电子存储方式到数据库的物理迁移并不像你想象的那么困难。例如,通常有一种在数据库和电子表格之间传输数据的快速方法,并且大多数电子数据可以被快速处理到可以在电子表格上呈现的程度。
员工培训包含在第二十章中。一个明智的开始方式是选择一个你的业务领域放入数据库,这样每个人都可以习惯新技术的本质。例如,您可以将有关客户联系信息的电子表格移动到数据库中的单个表中,并允许您的员工习惯于访问和操作它。一旦每个人都熟悉了第一个表格,您就可以将更多的电子表格导入到其他表格中。
值得注意的是,电子表格和数据库可以一起使用,直到所有员工都感到舒适。您必须确保只对其中一个文件进行更新,然后转移到另一个文件,这样更改就不会被覆盖。最明显的方法是对电子表格进行更改,然后定期将更改传输到数据库。这种传输可以通过几个简单的指令完成,称为更新查询,这在第二十章中有所介绍。通过这种方式,电子表格保持正常运行,但是员工可以打开数据库来查看数据是如何存储的,并且可以熟悉如何访问它。
这将花费太多的时间
正如生活的方方面面一样,只有你能回答这个反复出现的问题:“事情要变得多糟,我才会做出改变?”如果您使用纸质文件,并且每次有客户联系您时都在办公室里惊慌失措地跑来跑去,搜索文件,那么提高您的效率是有意义的。您确实需要投入时间来学习数据库,但是如果您继续使用过时的系统,这最终会比您所浪费的时间要少。您可以按照上一段关于中断的描述,逐步实现数据库。本章前面已经解释了数据库的好处以及数据对小型企业的重要性。这个决定归结为投资和回报之间的平衡,由个体企业决定它在可能性光谱中的位置。
太难学,太难实施
如果您以前没有使用过数据库,那么学习数据库可能会令人望而生畏。但是,如果您已经在使用文字处理和电子表格,那么使用数据库并不像您想象的那么容易。这本书将帮助你设定一些小目标并稳步前进。
它在优先级列表中太低了
经营一家小型企业可能会让人不知所措,工作时间很长,几乎没有时间来保持条理性。在试图关注数据之前,您可能有一长串需要整理的事情。它可能看起来像一个长期目标,而且像任何长期目标一样,它很容易被更多的短期计划所掩盖。
为了改善你的业务运作,你可能倾向于关注更重要的事情,比如采取措施改善你管理办公室、保存记录、储存产品和用品的方式。只有到那时,你才会觉得自己有资格看你的数据。
但是,如果您要从数据开始,很可能您业务的许多其他部分都需要仔细组织,以使流程有效工作。这是因为您的数据经常涉及到您业务的所有领域,如您的客户、销售和库存。
例如,假设 Cards for Everyone Inc .在处理客户的电话订单方面效率不高。顾客打电话进来,细节被写在纸上,放在帕特桌子上的一个托盘里,直到她可以把信息交给泽夫和利昂娜处理。有了一个将产品与供应商联系起来的数据库,他们可以快速查看是否有足够的库存来满足订单,如果没有,联系谁来获得更多。这促使立即更新产品表(表 1-2 )的可用数量字段,并开始为订单开具发票。一旦数据被输入数据库,纸质电话记录就可以被销毁,帕特办公桌上堆积的纸张瓶颈也就消除了。
未能预测业务增长的速度
当一个企业开始时,通常可以通过名字认出每个客户。简单的归档系统就足够了。然而,有一个点,客户不是立即可识别的:一般来说,当数量超过 50 个客户标记时,就会发生这种情况。在大多数情况下,小型企业希望尽可能保持其服务的个性化。
一个数据库可以让你保持你的服务个性化,即使客户数量增加。这是因为数据检索效率很高。例如,关于客户偏好的重要数据可以与他们的记录一起保存,以便当客户联系公司时可以快速访问这些数据。以 Cards for Everyone Inc .为例,一些客户可能对某些类型的卡片有偏好,例如猫或兔子,并且希望通过电子邮件让他们了解新设计的可用性。
未能理解数据对企业的价值
许多小型企业不了解他们的数据在利用利润方面的价值。您的小型企业拥有的数据有可能通过提供有用的信息、增加客户数量和改善客户体验来增加收入。管理人员可能乐于根据他们过去的经验、直觉或与市场上其他产品的比较来做出决策。使用数据库中的数据可以使这一过程从猜测走向精确的市场规划,从而使小企业更具竞争力,尤其是相对于更了解数据库的大企业而言。
在某些情况下,一个小企业没有数据库也可以运行得很好。例如,如果你开了一家咖啡馆,对每天新鲜购买的固定商品有固定的需求,那么你很可能是通过直接观察来经营的。如果你发现盐和胡椒不够了,你可以很容易地开车去商店买更多。保存顾客的记录并不简单。然而,你可以记录每天的销售情况、天气情况以及你所在的城镇正在发生的事件,然后利用这些信息来提高你的销售额、提高利润率以及推出新产品。当你面临竞争时,这一信息尤其重要,比如说,街对面新开了一家咖啡馆。对你的数据视而不见从来都不是一个好主意。
个案研究
三个案例研究将在接下来的三章中介绍,并在整本书中反复出现:第二章第一章中的一个小型工程公司,第三章第三章中的一个小型律师事务所,以及第四章第五章中的一个小型非营利组织。每个组织的历史都有详细的描述,以便将每个业务的当前位置放入上下文中。讨论了每个案例研究的业务目标。业务目标是成功的数据库设计和使用的基础,这个问题将在第五章中讨论。
二、小型工程公司:案例研究
本章介绍了三个案例研究中的第一个,作为整本书的范例。许多读者只会认同其中的一个,选择最适合你的情况或经历的案例研究是完全合理的。概括一下,第三章涵盖了一个小型律师事务所,第四章涵盖了一个小型非营利组织。
本章介绍了一家位于东海岸的小型工程公司。目前,该公司生产和销售同一产品的两个版本,并正在寻求扩张。电子表格目前用于存储数据。
智能手推车公司:背景
Smart 独轮车公司向居住空间有限的专业人士出售折叠式独轮车,比如那些住在带屋顶花园的城市公寓里的人和那些住在公寓里的人。这种手推车是由该公司的首席执行官霍华德设计的,因此框架、主容器和轮子都可以尽可能折叠起来,并可以挂在钉子上。它们由铝制成,以保持轻便。图 2-1 显示了折叠和展开状态下的手推车。
图 2-1。
Foldup wheelbarrow, folded and unfolded
手推车的折叠机构是通过多个分开的边缘和多个铰接的边缘实现的,这些边缘被称为分裂边缘。
Smart 独轮车公司位于康涅狄格州,在一个技术中心租了一个单元。该单位分为一个小办公室,一条生产线,和一个储藏室。该公司成立于 2012 年,开始销售一种尺寸的折叠手推车,即“标准”尺寸,有四种颜色:红色、绿色、黑色和白色。
通过口口相传,很明显顾客们把手推车用于装饰和园艺目的。人们还发现,一些高管客户使用手推车运送食物和葡萄酒等物品。这导致了另外两种颜色,金色和银色。
来自客户调查的反馈表明,存在对用于装饰的小型手推车的需求,例如用于盛放植物。这种产品不需要折叠的能力。
该信息的结果是总共开发了十二种产品,六种标准尺寸的折叠式手推车和六种小型非折叠式手推车。标准尺寸的红色、绿色、黑色或白色版本售价 120 美元,同等的小型版本售价 70 美元。标准的金或银手推车价格为 125 美元,小型金或银手推车价格为 75 美元。金色或银色的手推车稍微贵一些,因为油漆比其他颜色的要贵,必须从专业公司订购。表 2-1 总结了 Smart 独轮车公司提供的独轮车系列。
表 2-1。
Products Sold by Smart Wheelbarrows Inc.
| 产品名称 | 颜色 | 价格(美元) | | --- | --- | --- | | 标准手推车 | 红色、绿色、黑色或白色 | One hundred and twenty | | 标准手推车 | 银还是金 | One hundred and twenty-five | | 小手推车 | 红色、绿色、黑色和白色 | Seventy | | 小手推车 | 银和金 | Seventy-five |智能手推车公司通过其他业务分销其产品,如花店、园艺中心和亚马逊等在线零售商。它还通过网站(由承包商设计)和电话直接接受消费者的订单。
手推车一部分是在公司的场地上制造的,一部分是由承包商制造的。主集装箱的制造外包给一家拥有必要设备的当地公司。框架的制造和喷漆在内部进行,因为 Howard 找不到人来制作框架,所以他购买了必要的设备并雇佣了员工,如下一节所述。
智能手推车公司的员工。
智能手推车公司由霍华德经营,他有八名员工。Howard 是一名经验丰富的机械工程师,他曾在一家大型工程公司工作,但由于缺乏实现自己想法的自由而感到沮丧。Howard 邀请他以前的同事 Sanjiv(来自同一家工程公司)加入他的团队,担任技术生产经理。
霍华德和桑基夫雇佣了约翰和陈两个人在办公室工作。约翰负责接受订单并确保订单正确发出。陈负责记账和发放工资。
John 和 Chen 负责更新网站(网站设计为易于更新)和接听电话。他们在生病和休假期间互相掩护,作为一个团队工作。
霍华德在公司身兼数职。他做了大量的网络和营销工作。他还亲自或远程管理行政办公室。当霍华德在城里的时候,他每周都要在办公室门口探头探脑几次,以确保一切顺利进行。然而,霍华德大部分时间都不在城里,他会通过云中的加密电子表格定期在线查看订单。他还在网上查看银行账户(检查企业的现金流),并不时关注损益账户。
Howard 和 Sanjiv 招募了四个人在由 Sanjiv 管理的生产线上工作,具体如下:
- 海伦将铝管送到一台机器上,这台机器将铝管弯曲成手推车框架的形状。
- 米格尔负责框架和锁紧铰链的焊接。
- 他用铰链悬挂管子,并在一个特殊的隔间里操作喷漆。每个部分都涂了两层油漆。
- Valentina 负责所有部件,组装独轮车(折叠成标准尺寸),并将其装入一个准备装运的箱子中。其中一个组件是一个 U 形夹,它通过制造商放在那里的孔用螺栓固定在容器上,用于连接框架。她需要检查所有部件是否都已添加,这是通过称量每个箱子以检查其重量是否符合预期来完成的。一个小的差异可能意味着遗漏了一些小东西,如紧固件。
库房经理 Steve 负责供应品的入库和成品的出库。
Sanjiv 管理的公司之间有很大的灵活性,因此可以涵盖病假和假期。Sanjiv 可以执行所有工作,因此能够覆盖。他还确保所有四条生产线的操作人员能够完成彼此的工作。这给他们的工作带来了更多的兴趣,提高了劳动力的技能,并在员工短缺时提供了更好的掩护。表 2-2 总结了 Smart 独轮车公司雇佣的员工。
表 2-2。
Staff Working at Smart Wheelbarrows Inc.
| 名字 | 位置 | | --- | --- | | 霍华德 | 首席执行官 | | 三纪夫 | 技术生产经理 | | 约翰 | 命令 | | 陈 | 簿记和工资单 | | 海伦 | 第一条生产线运行:制造框架 | | 米格尔 | 第二条生产线运行:焊接 | | 山姆 | 第三条生产线运行:喷漆 | | 瓦伦蒂娜(f.) | 第四条生产线操作:包装 | | 史蒂夫(男子名) | 储藏室经理 |智能手推车公司存储的数据。
数据存储在电子表格中。就数据而言,Smart 独轮车公司和 Cards for Everyone 公司的主要区别在于,Smart 独轮车公司购买材料和组件并制造产品,而 Cards for Everyone 公司购买现成的产品并不经过任何进一步加工就出售。智能手推车公司有六个数据电子表格。下表总结了电子表格:
- 客户
- 发票
- 生产手推车所用的材料
- 材料供应商
- 用于标准手推车的材料(包括数量)
- 用于小手推车的材料(包括数量)
客户电子表格如表 2-3 所示,客户外发发票电子表格如表 2-4 所示。注意这两个电子表格中客户的姓名和邮政编码是如何重复的。
表 2-4。
Invoices for Smart Wheelbarrows Inc.
| 名字 | 邮政区码 | 日期 | 金额(美元) | | --- | --- | --- | --- | | 光明花店 | 纽约州 11375 | … | … | | 希拉里·史密斯 | 马 02108 | … | … | | 布利斯花园中心 | RI 02886 | … | … |表 2-3。
Basic Customer Spreadsheet for Smart Wheelbarrows Inc.
| 名字 | 邮政区码 | 电话 | 电子邮件 | 种类 | | --- | --- | --- | --- | --- | | 光明花店 | 纽约州 11375 | … | … | 商业 | | 希拉里·史密斯 | 马 02108 | … | … | 商业 | | 布利斯花园中心 | RI 02886 | … | … | 消费者 |此外,Smart 独轮车公司有一份独轮车部件的材料电子表格(如表 2-5 所示)和一份材料供应商的供应商电子表格(如表 2-6 所示)。还有一份供应商发票的电子表格(未显示,但类似于表 2-4 中用于客户发票的表格)。没有产品的电子表格,因为列表很短并且不会经常改变。
表 2-6。
Basic Suppliers Spreadsheet for Smart Wheelbarrows Inc.
| 供应商名称 | 邮政区码 | 电话 | 电子邮件 | | --- | --- | --- | --- | | 铝盒 | … | … | … | | 工程用品 | … | … | … | | 顶级材料 | … | … | … | | 优质油漆 | … | … | … | | 豪华油漆 | … | … | … |表 2-5。
Materials for Smart Wheelbarrows Inc.
| 软件零件号 | 供应商零件号 | 供应商名称 | 产品名称 | 价格(美元) | 可用数量 | | --- | --- | --- | --- | --- | --- | | OS01 | 是 39 号 | 工程用品 | 铰链 | … | … | | OS02 | 是 24 个 | 工程用品 | 车轮 | … | … | | OS03 | 是 67 | 工程用品 | 处理 | … | … | | oso4 | 是 09 年 | 工程用品 | 扣件 | … | … | | OS05 | AB01 | 铝盒 | 容器 | … | … | | OS06 | TM01 | 顶级材料 | 铝管 | … | … | | OS07-1 | QP04 | 优质油漆 | 红色油漆 | … | … | | OS07-2 | QP11 | 优质油漆 | 绿色油漆 | … | … | | OS07-3 | QP18 | 优质油漆 | 黑漆 | … | … | | OS07-4 | pp19 | 优质油漆 | 白漆 | … | … | | OS07-5 | LP25 | 豪华油漆 | 金色油漆 | … | … | | OS07-6 | LP26 | 豪华油漆 | 铝粉漆 | … | … | | OS08 | 23 岁了 | 工程用品 | 小轮子 | … | … | | OS09 | 是 68 年 | 工程用品 | 小把手 | … | … | | OS10 | 八点了 | 工程用品 | 小紧固件 | … | … | | OS11 | LP02 | 铝盒 | 小容器 | … | … | | OS12 | 69 年了 | 工程用品 | u 形夹 | … | … |手推车的零件编号如下:
- 对于内部制造的零件,编号以 SW 开头,代表智能手推车。
- 对于所有其他零件,外部供应商的编号以 OS 开始,因此这些零件的编号系统与表 2-5 第二列中所示的每个零件的供应商使用的编号一致。
- 油漆都是 OS07,根据颜色有后缀。
表 2-5 中材料电子表格的第三列包含相应的供应商名称。通过在表 2-6 的供应商电子表格中找到该供应商对应的行,可以获得供应商的详细信息。
Smart 独轮车公司对其每种产品都有一份材料清单(BOM)。这是原材料和子组件的清单;制造每种产品所需的零件和数量。表 2-7 显示标准独轮车的 BOM,表 2-8 显示小型独轮车的 BOM。
表 2-8。
Bill of Materials for the Small Wheelbarrow
| 零件号码 | 零件名称 | 量 | | --- | --- | --- | | SW03 | RHS 框架 | one | | SW04 | LHS 框架 | one | | OS08 | 小轮子 | one | | OS09 | 小把手 | Two | | OS10 | 小型紧固件 | four | | OS11 | 小容器 | one | | OS07 | 颜料 | 升 |表 2-7。
Bill of Materials for the Standard Wheelbarrow
| 零件号码 | 零件名称 | 量 | | --- | --- | --- | | SW01 | RHS 框架 | one | | SW02 | LHS 框架 | Two | | OS01 | 关键 | four | | OS02 | 车轮 | one | | OS03 | 处理 | Two | | oso4 | 扣件 | four | | OS05 | 主容器 | one | | OS07 | 颜料 | 半升 | | OS12 | u 形夹 | four |请注意,两个 BOM 中都没有 OS06(铝管)。这是因为铝管是内部制造的手推车框架。还需要四个 BOMs 标准独轮车的右侧框架和左侧框架各一个,小型独轮车的右侧框架和左侧框架各一个。这里没有显示这些。(注意,小手推车的两个框架被设计成通过轮子相互嵌入。)
请注意,小手推车没有铰链,因为它不会折叠。
数据库
霍华德在旅途中遇到了他的大学老朋友安妮特。安妮特是一名数据分析师,她问霍华德智能手推车公司是否在使用数据库。Howard 从未考虑过数据库,此外,他觉得他们使用的电子表格已经足够了。安妮特认为,数据库可以帮助霍华德更好地了解他的客户群,并吸引新客户。客户数据库对于推动有效的营销活动也至关重要。
数据库还可以加强 Smart 独轮车公司的库存控制。通过将每个 BOM 与材料和产品电子表格相链接,可以查看库存中是否有足够的独轮车来满足订单,是否需要制造更多的独轮车,如果需要,是否有足够的库存来满足订单。目前,当订单进来时,约翰倾向于给储藏室的史蒂夫打电话,直接问这些问题,或者如果史蒂夫不在,他会亲自去储藏室检查供应品。这不是对时间的有效利用。
霍华德受到讨论的鼓舞,同意阅读安妮特建议的一些在线资料,然后回复她。
智能手推车公司数据库的开发将在以后的章节中介绍。
研究思路
许多人问霍华德,手推车是否可以用回收的聚合物产品(即回收的家用塑料)制成。他一直在思考这个问题,并与可能有帮助的人交谈。使用回收材料存在一些挑战,霍华德希望有时间来调查。两个主要问题如下:
- 框架的设计可能会更加困难。为了给独轮车提供足够的强度,可能需要大量的回收材料,从而使得框架笨重且不美观。
- 还有一个问题是,回收的聚合物产品可能具有较差的光洁度,因为它们不是非常光滑。
霍华德需要考虑将新的生产流程整合到他的业务中。这个框架可能需要注射成型,也就是说,将熔化的塑料注入模具。他希望成型是简单的,一次成型,也就是所谓的“一次成型”
霍华德想为这项研究申请资助。确定资金来源将涉及寻找许多潜在的捐助者。此外,一旦研究开始,通过快速查找研究论文来跟上最新发表的工作对 Howard 来说是很重要的。第十九章涵盖了在线数据库的有效搜索。
摘要
一家小型工程企业 Smart 独轮车公司生产小型独轮车。该企业将其数据存储在许多电子表格中,涵盖了客户、发票、产品和供应商。此外,还有描述所用材料的电子表格和显示每个产品如何制造的电子表格(称为材料清单)。公司的雇员也有一个电子表格。在接下来的许多章节中,Smart 手推车公司将被用作案例研究,展示将电子表格转换为数据库所需的各个阶段。
三、小型律师事务所:案例研究
本章介绍了小型律师事务所的案例研究。概述了其发展初期的细节,以及雇用越来越多的工作人员和采用新技术的情况。营销在公司中起着核心作用,是公司发展和成功的基础。数据库有潜力在其营销政策和业务的许多其他方面发挥关键作用。然而,正如您将看到的,律师事务所的许多任务可以通过负担得起、易于使用、现成的技术解决方案来完成。市场营销是数据库对小企业有用的一个例子,因为定制的软件非常昂贵。
本章介绍了詹宁斯-哈佛律师事务所。没有必要记住这里描述的所有内容。目的是为后面的章节做准备。这些案例研究尽可能真实,如果其中有什么是你感兴趣的,那么最好的方法就是在你通读的时候记下来。
詹宁斯-哈佛律师事务所
以下部分介绍了詹宁斯-哈佛律师事务所的背景历史,其成立的动机,以及最近发展的性质。
背景
五年前,蒂姆·詹宁斯和他法学院的朋友纳迪娅·哈弗一起建立了詹宁斯-哈弗律师事务所。蒂姆拥有公司 60%的股份,纳迪亚拥有 40%的股份。该公司专门提供遗产规划、信托管理、遗嘱认证服务和长期护理规划服务。以下是对每一项的简要总结:
Heritage planning: decide who is responsible for managing and managing the customer's heritage when the customer can't make his own decision. This includes who will get their property after their death and how the property will be distributed. Management: After the death of the person who created the trust, the federal estate tax exemption will need to be retained, in short, the ownership of assets will need to be changed. Probate: The process of managing the deceased's estate under the supervision of the court. Long-term care planning: Customers need to be prepared not to make their own decisions before their death. This includes protecting their assets from being exhausted by medical and nursing home expenses, medical qualifications and supplementary security income.
这项工作从基本的遗嘱到高级的遗产规划都有。
蒂姆被这一法律领域所吸引,因为他喜欢这一事实,即它满足了一种几乎普遍的需求,从而为广泛的客户带来了潜力。最重要的是,最初的动机来自于帮助人们避免在没有适当法律保护的情况下死亡可能带来的痛苦。蒂姆小时候就遇到过这种事,他的父亲意外去世,没有留下遗嘱。
该公司在加州帕洛阿尔托市中心设有办公室。之所以选择这个地区,是因为人们觉得它会吸引来自帕洛阿尔托及其邻居东帕洛阿尔托的各种各样的客户。
蒂姆和娜蒂娅现在是高级合伙人,有自己的案子要处理。他们最初出发时,雇佣了一名私人助理莱瓦娜(Levana),她为他们两人提供支持。接待员 Janine 也被雇用来照看前台,接电话,在门口迎接客户,并整理日记。
市场调查
该公司发展良好,蒂姆希望这种增长能够持续下去。花了几千美元雇了一个营销顾问来做一些研究。这项工作的主要成果是让 Tim 和 Nadia 了解他们现有客户的概况,以便他们能够吸引更多的客户。大多数是中等收入,超过 50 岁,已婚或至少有一个孩子的同居者。该顾问注意到,在他们的客户所来自的地理区域,有许多人与公司的现有客户具有相同的特征,只有一个主要区别。那就是他们来自上一代没有多少钱的家庭。该公司现有的客户都出生于富裕家庭。他们的结论是,现有的客户意识到立遗嘱的重要性,而另一组则意识不到。
蒂姆相信,他可以通过让客户了解立遗嘱的重要性来吸引其他群体的客户,这样他们就可以把自己的财富传给子女。Tim 和 Nadia 决定需要一名新员工来开拓这个市场。这个人会举办研讨会,向那些没有意识到立遗嘱重要性的人宣传公司的工作。Tim 也意识到公司的发展给现有员工带来了越来越大的压力,他们需要更多的支持。
虽然 Tim 发现市场调查的结果很有用,但他想知道是否有可能在内部进行这样的调查。毕竟,他有所有客户的联系方式和一些年龄数据。他还指出,该顾问使用了美国人口普查局的公开数据。在再次拿出一大笔钱之前,他决定探索一下公司自己能做多少工作。
jennings-harvard 律师事务所的其他员工
由于市场调查的结果,另一位名叫露丝安娜的律师和另一位名叫多明尼克的私人助理被雇用了。
大约一年后,蒂姆指导了一个名叫马尼尔的学生,并在他通过考试后,让他成为一名新的合格律师。当 Maneer 合格后,Tim 雇佣了第二个实习生,名叫 Christine。
另外两名员工被雇佣来帮助公司发展:一名合格的会计师 Afrah 负责会计工作,一名行政助理 Sophia 负责基本的行政工作。
表 3-1 总结了詹宁斯-哈佛律师事务所的工作人员。
表 3-1。
Staff Working at Jennings-Havard Law Offices
| 名字 | 位置 | | --- | --- | | 定时(timing 的缩写) | 高级合伙人 | | 纳迪亚 | 高级合伙人 | | 露丝安娜 | 律师 | | 方式 | 最近获得资格的律师 | | 克里斯廷 | 实习律师 | | 阿弗拉赫 | 会计师 | | 拉瓦娜 | 蒂姆的私人助理(负责曼尼尔和克里斯汀的工作) | | 多米尼克?多米尼克 | 纳迪亚和露丝安娜的私人助理 | | 索菲娅 | 行政助理 | | 阿杏 | 接待员 |网络和营销
Tim 从一开始就非常重视网络和营销。他总是乐于接受新的想法,并欢迎员工的意见。随着新员工加入公司,他们的想法和经验已被添加到当前的网络和营销活动中。Jennings-Havard 律师事务所的网络和营销工作总结如下。
社交聚会
蒂姆和娜迪亚是法学院同学中的一员,他们一直保持着联系。大约每个月,他们都会聚在一起吃顿饭,聊聊近况,交流想法和经验。Tim 发现这非常有帮助——特别是关于公司营销和采用软件使公司更具竞争力的建议。他会花时间研究给他的任何建议,并仔细考虑在公司实施任何新的工作方式。正是在这些社交聚会上,蒂姆验证了他对营销顾问工作的想法。一些同学建议他探索数据库,作为一种可能的和更便宜的前进方式。
网站
公司开业后不久,一个承包商就设计了一个网站。管理人员可以很容易地更新它。Tim 每周在网站上写几次博客,提供他认为对现有和潜在客户有用的信息。有人告诉 Tim,包含有用链接的关于公司的小型、定期、有趣的帖子可能比一些较长的帖子更有效。还有一份关于即将举行的活动的时事通讯。网站上的活动通过分析进行监控,并做出改变以吸引更多的访问者到网站上最感兴趣的地方。
社会化媒体
Maneer 运营着公司的 Twitter feed,每天发送大约 6 条推文。他们的个人资料已经在当地律师事务所和社区组织中积累了数千名追随者。露丝安娜鼓励她的同事使用 LinkedIn 来挖掘专业知识,从而最大限度地发挥活动中建立的联系的好处,并促进公司的工作。
网络活动
鼓励法律工作人员进行仔细研究,以确定可能推荐客户的组织,并安排会见代表。蒂姆坚持让律所出席律师协会举办的活动,这样律所更有可能获得推荐。蒂姆要求他的员工不断地以这种方式推销自己,而不仅仅是在公司业务不景气的时候。露丝安娜安排了自己的活动日程,以吸引那些不一定意识到自己的服务有多重要的客户。
传统广告
该公司在当地报纸、互联网和当地电台上刊登广告。他们还散发传单和名片。
处理新客户
自开业以来,Jennings-Havard 律师事务所一直在各种软件程序的帮助下,慢慢地从纸质文件中脱离出来。为了让你了解办公室的工作方式和他们使用的软件,他们在接待客户时使用的程序如下:
Each new client has 30–60 minutes of free consultation to present their case. The attorney decides whether they can take the case. If Jennings-Havard can take on the case, the client is told so during the consultation. If not, the client is referred to a colleague or to a range of suitable attorneys from different practices. They open a file on the client with a case number. They explain the likely costs of the work. After the interview, the firm sends a letter of thanks that summarizes the meeting, sets out the procedures that will be followed, specifies the costs, and explains who handles complaints. Work then starts on the case. Letters may be necessary. Research may be needed, for example, to identify the latest tax laws. The amount of time spent working on any aspect of the case is recorded. Some work is passed to the administration staff—for example, they send documents in connection with land registration and invoices to clients. When a case is complete, the file is stored at the office.
公司内部的软件使用
Tim 主要根据他法学院朋友的建议,慢慢地引入了涵盖个人任务的软件。这导致了一种相当脱节的工作方式,但是公司负担不起涵盖所有任务的软件套件。蒂姆和纳迪亚的同学倾向于以类似的方式工作,除非他们在一家大得多的公司工作。以下部分总结了主要的办公活动和他们使用的软件解决方案的类型。
电子邮件
这家公司一直使用电子邮件在员工和许多客户之间通信。邮政系统用于任何不在线的客户和一些正式文件。
日历
公司刚成立时,Janine 用一个大日记本来记录约会。然而,随着公司的成长和员工的增加,日记变得低效和繁琐。此外,如果有人不在办公室,日记不能被直接访问。因此,该公司转向了共享的电子日历,无论他们身在何处,都可以同时查看和更新。
Note
在这些情况下使用的日历类型的例子是 Google Apps (Google Calendar)、Microsoft Exchange 和基于网络的应用,例如 30boxes.com、Zoho Calendar 和 Yahoo Calendar。
管理客户联系信息
公司为每个客户存储了姓名、地址、电话号码和电子邮件地址。随着公司的发展,这些信息变得难以管理。该公司随后采用了一种联系人管理工具,为管理大量联系人提供了许多有用的功能。例如,可以很容易地创建不同的联系人组。例如,他们可以创建一组选择接收公司时事通讯的客户,然后使用这些数据来创建和跟踪邮寄活动。
Note
联系人管理工具的例子是基于网络的工具,例如 Google Apps(通用联系人管理器—UCM)、Plaxo 和 Microsoft Outlook Anywhere。
任务管理
当公司很小的时候,每个律师都可以在管理人员的帮助下,用一个非正式的“待办事项”清单来管理自己的工作量。然而,该公司现在有大约 400-500 个正在进行的案件,平均每周有 15-20 个新案件进入该行业,每周有 20-30 个案件完成。尽管正在进行的案件有时只需要很少的日常工作,但这对于这么少的人来说可能是一件大事。很难避免错过最后期限,积极主动地处理每个未结案例,并按时支付账单。Tim 为一项基于网络的服务支付了少量月费,该服务允许员工管理整个公司的任务。办公室内外的每个员工都可以使用这项服务。
Note
这类任务管理系统的例子有 Flow、TaskMerlin 和 Remember the Milk。
案例状态
该公司使用软件存储每个客户的信息。每个客户都有一份记录,其中包括他们以前与该公司的所有互动、他们的案件状态、未决发票、他们的案件历史等等。蒂姆发现,在公司发展如此迅速的情况下,这对于维持对客户的个性化服务非常重要。可以记录下客户对话的细节,以便日后检索。
Note
Trello 和 Asana 就是这种情况状态软件的例子。
时间跟踪
客户发票是通过确定在特定案例上花费的时间来计算的。Tim 意识到大部分账单都是基于猜测。他担心公司成员低估了他们花在案件上的时间,因此少收了费用。Tim 选择了一个结合了时间跟踪和发票的廉价软件包。
Note
时间跟踪软件的例子有雀斑,Paymo 和 OfficeTimer。
存储和备份文档
该公司采用了基于云的存储服务,可以从任何连接互联网的设备上访问他们的文档。(云在第十八章中有描述。)这意味着不需要在公司的办公室里设置物理计算机服务器来存储文档。
Note
文件存储软件的例子有 Dropbox、Google Drive 和微软的 OneDrive。
记笔记
Tim 从来不满意他给客户的纸质笔记的数量,因为他发现这些笔记不整洁,而且在他需要的时候拿不到。这不是一种理想的工作方式,尤其是当他在办公室外会见客户时。同学们推荐了一个基于云的笔记和组织工具作为替代。这使得文档可以在办公室内外以电子方式查看、编辑和创建。笔记可以与其他人共享。
Note
笔记软件的例子有 Evernote、Springpad、Google Keep、Microsoft OneNote 和 Simplenote。
文件汇编
有些文件重复使用,只有很小的变化,如遗嘱。律师可以选择购买昂贵且不灵活的文档汇编包,或者创建自己的模板。有人建议蒂姆最大限度地利用他现有的文字处理器的功能,学会使用可重复使用的模板。许多组装插件都不是很贵,现在功能已经很熟悉了,他可以轻松地创建合适的模板。
Note
Microsoft Word 中使用的文档组合插件的例子有 FormTool 和 Pathagoras。也有基于网络的文档汇编产品,如 Rapidocs 和 Xi | DRAFT,它们是独立于操作系统的。
数据库
网络和营销对公司的发展至关重要,但除了网站和社交媒体,Tim 还没有找到一种利用技术在这方面帮助他的方法。Tim 的同学圈认为,至少数据库是利用现有的满意客户的基础。公司必须努力与这些客户保持联系。Tim 知道向现有客户销售更多比吸引新客户更便宜。
此外,Tim 还想了解营销顾问是如何对他的客户进行描述的,并确定在他的服务区域内有类似描述的潜在客户。他知道可以将他的数据与其他数据库(例如,美国人口普查局发布的数据)进行匹配,以增加他拥有的关于客户的信息量。该过程在第九章中有所介绍。
由于该公司已经在没有数据库的情况下运营了多年,Tim 担心在创建数据库之前需要处理大量数据。关于客户的数据主要存储在两个地方——联系人管理系统和案件状态软件。联系人管理系统允许以可管理的形式导出数据,例如 MS Excel。这些数据可以快速转移到数据库中。案例状态数据通常不太容易获取。
然而,有可能对案件进行分类,并利用这一信息来确定对服务的需求。考虑交叉销售也是有用的——例如,如果知道客户要参加有关长期护理的活动,但没有为任何相关工作付费,公司可以通过提醒客户在该领域的服务来跟进。
起点是确定数据库的主要目标,其过程在第五章的中讨论,并相应地设计数据库,如第七章的中所概述。数据需要被“净化”——例如,确保条目之间的拼写一致——实现这一点的方法在第十章中有所介绍。
搜索互联网
该公司进行的一项常见在线搜索包括在一个人死后获取其遗嘱副本和其他遗嘱检验法庭记录的步骤。由于遗嘱认证文件是公共法庭记录,很可能已经归档的文件列表将可以免费查看(假设遗嘱认证遗产归档的位置是事先确定的)。附加信息应该包括谁被指定为遗产的执行人,以及执行人雇佣的律师。这些信息使得可以从遗产承办处索取这些文件的副本。
部分问题是可能没有遗嘱,事务所的律师需要知道什么时候可能会有遗嘱。搜索在线数据库在第十九章中有详细介绍。
摘要
一家名为 Jennings-Havard 律师事务所的小型律师事务所处理与遗嘱认证和长期规划相关的案件。该公司的许多数据相关活动都是使用基于网络的应用程序和其他软件以一种相当特别的方式处理的。
该公司聘请了一名营销顾问来帮助他们吸引更多的客户并保持增长。虽然有用,但建议非常昂贵,该公司的高级合伙人希望探索他们可以在内部使用数据库做些什么。
未来的章节将考虑公司如何利用现有数据和其他来源的数据进行市场研究,以帮助他们留住现有客户并吸引新客户。
四、小型非营利组织:案例研究
本章介绍了一个名为“连接南区”的小型非营利组织的案例研究。非营利组织的工作有一些详细的描述,这样你可以理解收集和分析数据的要求。数据收集在一系列 MS Excel 电子表格和 Word 文档中。本章中的信息为后面的章节奠定了基础;不需要做笔记,也不需要记住每一个细节。
连接南侧
以下部分解释了为什么要创建 Connecting South Side,并描述了它的基本操作。你也会被介绍给它的员工。
背景
连接南区是一个位于芝加哥南区的小型非营利组织。该组织的宗旨是改善生活在社区中被社会孤立的人们的生活。就种族和生活水平而言,南部是多样化的。它以高犯罪率和贫困而闻名,尽管也有一些富裕的社区,并且是该市世界级的芝加哥大学的所在地。
当一个人完全孤独,在个人危机中没有家人或朋友可以求助时,就会出现社会孤立。他们与其他人的互动很少且很遥远,比如在商店交易时。如果一个人被社会孤立了一段时间,这对他或她的身心健康都是有害的。
人们会因为许多原因而变得孤立,其中许多原因是相互关联的。健康问题和残疾通常与衰老过程有关,会妨碍人们离家的能力。失去配偶会让另一个人的生活天翻地覆,导致他们变得抑郁,不再出门。失去工作会导致抑郁,几乎没有收入来资助社交活动,以及糟糕的自我形象。如果健康问题和收入下降影响了驾驶能力,这些问题就会加剧。
“连接南区”是一个路标组织,它为人们提供了一个通过电话或现场讨论问题的机会。通过电子邮件或信件联系也是可能的。然后,询问者会被指引到能够提供进一步帮助的组织。询问来自那些受社会孤立影响的人,来自关于客户的专业人士,或者来自关心个人的公众。
Connecting South Side 收集的数据量很大,其管理变得越来越低效。连接南侧时使用的数据将在下一个主要部分讨论。
下一小节提供了一个简单的查询示例。应注意的是,在连接南区时,询问者的隐私至关重要,这些问题将在第八章中进一步讨论。
一个例子:多萝西的询问
多萝西·贝恩搬到芝加哥南区后不久就成了寡妇,没有机会结识当地人。她还患上了严重的残疾,这使得她不能开车或走很远的路。她没什么钱,坐不起出租车。多萝西的邻居帮她拿杂货,她注意到多萝西的身体和精神健康状况最近有所恶化,并对此表示担忧。她联系了“连接南区”,并简要说明了她的担忧。连接南区的代表同意直接联系 Dorothy。
连接南区代表为 Dorothy 的案例分配一个唯一的标识号,并将有关查询的详细信息输入到一个名为“案例文件”的 Word 文件中,该文件的名称为 255 Dorothy Bain 10 12 2015.docx,其中 255 是 Dorothy 案例的唯一标识号,日期是指第一次与连接南区联系的日期(在 Dorothy 的情况下,是她的邻居)。代表在 Excel 电子表格上创建案例摘要;它包括多萝西的性别和年龄等细节。关于如何存储数据的更多细节将在本章后面的数据一节中给出。
初步调查后,连接南区直接联系多萝西。在一次长谈中,多萝西向代表讲述了她的生活。她透露说,她没有帮助她解决行走问题的设备,并提到她是一名虔诚的天主教徒,想去教堂。桃乐丝的档案中增加了更多的注释。
该代表与另一个非营利组织取得联系,该组织旨在通过提供移动设备来提高芝加哥低收入残疾人的独立性。他们安排评估多萝西的需求,但有一个很长的等候名单,所以她将在几个星期内看不到。多萝西的询问继续在她的档案中被追踪。
连接南区联系最近的天主教堂,这将多萝西和住在下一条街的友好的爱尔兰家庭墨菲夫妇联系起来。墨菲夫妇很乐意每周载多萝西去参加周日弥撒。墨菲夫妇很关心多萝西,定期请她吃饭。他们还让她与教堂的圣·文森特·德·保罗协会(SVP)取得联系,该协会安排探访身体不适的人。
连接南区检查多萝西,看看她进展如何。多萝西喜欢去教堂,了解墨菲一家,并接受 SVP 每周的访问。她希望与 Connecting South Side 保持联系,以便将来可以安排其他活动。
多萝西的邻居联系连接南区,感谢他们的帮助。她为自己在多萝西身上看到的积极变化感到高兴。代表在 Dorothy 的案例文件中记录了这一反馈。
几个月后,多萝西再次联系连接南区。她已经接受了设备需求评估,并获得了一些拐杖,行动更加灵活。
多萝西在离家几英里的一家咖啡店里发现了一个编织小组,她非常想去。然而,她担心交通问题。“连接南区”联系了一家慈善机构,该机构为残疾人提供负担得起的交通工具。
一年后,多萝西在“连接南区”的支持下,以及教堂和设备慈善机构的后续支持下,大部分时间都在外出。多萝西的案子已经结了,虽然她可以再联系。该案例在 Excel 电子表格记录中被标记为已关闭。
询问过程
在许多情况下,处理连接南区查询的流程并不简单。询问者发现自己所处的许多困境非常复杂,在他们完全了解情况之前需要进行多次长时间的讨论。此外,在有希望取得任何改进之前,可能需要在相当长的一段时间内与其他组织进行多次互动。许多调查比多萝西的更复杂,涉及无家可归、家庭暴力和吸毒/酗酒等问题。但是,所有查询都遵循相同的基本程序:
The enquirer or enquirer’s representative contacts Connecting South Side by telephone, e-mail/letter, or in person. The case is given a unique identification number. The case representative opens a Word file, from now on referred to as the “case file”, for collating notes about the case. It uses the naming convention “
连接南区的员工
Clare 是 Connecting South Side 的首席执行官,她大部分时间都住在芝加哥。她在大学期间开始在芝加哥的一个社区服务中心工作,帮助人们解决福利问题。毕业后,她最终在该中心找到了一份全职工作。在这个职位上,她参与了该中心的拨款写作,并协助了一系列成功的投标。克莱尔渴望建立自己的组织,帮助那些没有被纳入主流社会的人,因此她向当地社区基金会申请了一笔赠款,并获得了成功。连接南区是这项申请的结果,最初的拨款是两年。
除了克莱尔之外,还有六名员工获得了资助:五名全职热线服务人员和一名全职管理员。管理员职位和其中一个热线电话职位由两名兼职人员分担。表 4-1 汇总了连接南侧人员。
表 4-1。
Staff Working at Connecting South Side
| 名字 | 位置 | | --- | --- | | 克莱尔 | 首席执行官 | | 亨德里克 | 热线服务电话 | | 大石彩香 | 热线服务电话 | | 弗兰克 | 热线服务电话 | | 利齐 | 热线服务电话 | | 一月 | 求助热线(兼职) | | 账单 | 求助热线(兼职) | | 兰维尔 | 行政管理(兼职) | | 吉姆(人名) | 行政管理(兼职) |作为他们工作的一部分,所有工作人员都被要求帮助宣传该组织,并为询问者收集有关潜在帮助来源的信息。
连接南侧时使用的数据
以下各节讨论了连接 South Side 所使用的数据及其存储方法。
每一项调查都有一份案卷
如上一节所述,每个询问者都被分配了一个包含其询问描述的案卷。条目有三个主要组成部分:
- 日期
- 连接南区代表的姓名首字母
- 询问的最新阶段的描述
例如,如果 Lizzie Shaw 在名为 255 Dorothy Bain 10 12 15.docx 的案件档案中输入 Dorothy 的查询,它可能以如下方式开始:
10.12.15 一个邻居打电话来询问多萝西·贝恩的情况,她担心她的精神和身体健康等问题。
10.12.15 LS 与 Dorothy 讨论她的情况。她非常孤独。她只能走几英尺,并且没有设备帮助,等等。
案例文件存储在办公室计算机共享驱动器上的目录中,以便每个人都可以访问它们,尽管两个人不可能同时编辑一个文件。
总结所有案例的电子表格
“连接南方”的代表收集关于查询者的数据,以便他们能够了解使用他们服务的人的总体情况。有些数据,比如性别,可以直截了当。其他数据,如年龄范围和种族,可能更加困难。数据中可能有许多空白。向处于困境中的人索要大量人口统计数据并不总是合适的,因此热线接线员会自行判断。一些询问者希望保持匿名,在这些情况下,几乎没有数据是已知的或收集的。一般来说,如果一个查询需要一段时间来处理,大多数数据将变得可用,尽管需要几个阶段。
理想的查询文件应包括以下数据:
- 名字和姓氏
- 性别
- 年龄范围:0-9 岁,10-19 岁等。
- 邻近地区:例如 Armour Square、Back of the Yards、Bridgeport 和 Pullman。
- 种族本源
- 健康:涵盖有关查询者健康和残疾的信息。
- 来源:确定人们是如何发现“连接南区”的,并帮助展示宣传活动的效果以及在社区的哪些区域。可能的来源包括社区活动、口头传播和宣传材料。
- 联系人数量:许多查询包括大量电话,包括进出连接南区以及访问和研究。多萝西的例子涉及几个电话和互联网搜索。为了估计 Connecting South Side 针对每个查询所做的工作水平,提供了进出联系人的计数以及每个查询所访问的网页数量。
- 来电类别:询问可以涵盖一系列类别,但通常最初会有一个主要焦点。这些信息包括就业、移民、住房、福利、医疗保健、债务等等。例如,Dorothy 的查询类别记录为“医疗保健”,尽管她的查询远比这复杂。
- 路标指向的组织类型:这提供了路标组件的快照,包括帮助热线、支持小组、社区活动和志愿服务。多萝西已经被指引到两个支持团体(设备非营利组织和运输非营利组织),一个社区团体(教堂),和一个休闲活动(咖啡店的编织团体)。
- 开放:每个查询都标记为开放或关闭——Y =开放,N =关闭。
表 4-2 显示了 Connecting South Side 为其查询创建的 Excel 电子表格示例,每一行一个。ID 号显示在第一列。显示了 ID=255 的 Dorothy Bain 的行。本例中的三个点“…”表示缺少列、行和值。例如,在表 4-2 中没有空间为上面列出的每个数据项显示一列。
表 4-2。
Excel Spreadsheet Containing Case Summaries
| 身份 | 西方人名的第一个字 | 姓 | 性别 | 年龄 | … | 打开 | | --- | --- | --- | --- | --- | --- | --- | | one | 阿莱克西 | 公用电话 | 男性的 | 50–59 | … | Y | | Two | 亚林 | 成 | 女性的 | 50–59 | … | 普通 | | three | 尼哈尔 | 白兰地 | 女性的 | 40–49 | … | 普通 | | … | … | … | … | … | … | … | | Two hundred and fifty-five | 女子名 | 【人名】贝恩… | 女性的 | 80–89 | … | Y | | Two hundred and fifty-six | … | … | … | … | … | … | | Two hundred and fifty-seven | … | … | … | … | … | … | | Two hundred and fifty-eight | … | … | … | … | … | … | | … | … | … | … | … | … | … |报告
“连接南区”当前和未来的成功取决于对其活动的定期和准确的报告。它必须表明它达到了其拨款的目的和目标。从社区联合会获得的赠款的目的和目标如下:
目标:改善生活在芝加哥南部来自不同背景的社会孤立人群的生活。
目标:
To make contact with a minimum of 1,000 socially isolated people living on the South Side, roughly two per day during the work week, over the two-year period. To take enquiries from those of diverse age, ethnic origin, neighborhood, and health. To publicize the service in all areas of the community. To link the enquirers to organizations that can help them move away from social isolation. To identify gaps in services.
在上一节描述的电子表格上收集的数据可用于量化目标 1、2 和 4(目标 3 和 5 稍后考虑)。
目标 1 通过计算连接南侧的查询数量来衡量。如果这等于或大于 Connecting South Side 已经运行的工作日数的两倍,则该组织符合目标。
目标 2 可以通过总结为每个询问者收集的关于他们的年龄、种族、邻居和健康状况的数据来评估。例如,可以统计每个社区的询问者人数,并逐月进行比较。第十三章提供了关于数据分析的更多详细信息。
目标 4 可以通过计算求助热线、社区团体等路标的数量来量化..该信息可在电子表格中找到。
目标 3 可以通过列出员工参加的活动来量化,这些活动旨在推广服务并介绍他们的工作。可以给出关于广告和社交媒体使用的细节。此外,他们可以使用电子表格中的 Source 列在某种程度上衡量宣传活动的影响。“来源”一栏描述了咨询者是如何找到他们的服务的。
“连接南方”可以衡量目标 5,即通过工作人员讨论和在发现缺少必要服务时做记录来弥补服务差距。向当局传达有关差距的信息后产生的任何积极成果都特别重要。
可以匿名案例研究的形式提供报告的定性信息,展示“连接南方”如何运作。代表们还记录从询问中得到的任何积极反馈(以匿名形式),以便资助者可以看到这项工作正在产生的影响。例如,多萝西的邻居打电话来说,她对多萝西的进步感到非常高兴。代表将这一信息添加到多萝西的报告中。
服务数据库
Connecting South Side 保留了一个 Excel 电子表格,列出了该地区尽可能多的相关服务,以供参考。这些组织既有社区服务中心这样的长期组织,也有一次性活动,比如律师就住房等问题提供免费咨询。所有员工都有责任保持电子表格的更新。由于每位员工都住在芝加哥,他们经常在各个社区寻找新的支持来源和负担得起的活动。他们带来新的小册子,并频繁地传阅关于新服务的电子邮件。每个服务都有以下数据:
- 名字
- 地址
- 可用时间/日期
- 描述
- 类别,如法律、健康、休闲等。
- 与会者的年龄
表 4-3 显示了为低收入人群提供的本地服务的电子表格示例。可以过滤每一列。例如,如果有人正在寻找一个瑜伽班,那么可以针对瑜伽对第一列进行过滤,然后可以识别出在年龄组和社区方面最合适的班。
表 4-3。
Excel Spreadsheet Containing Service Summaries
| 名字 | 地址 | 时间/日期 | 种类 | … | | --- | --- | --- | --- | --- | | 瑜珈 | … | … | 闲暇 | … | | 75 岁以上午餐 | … | … | 闲暇 | … | | 免费住房咨询 | … | … | 合法的 | … | | 运输帮助 | … | … | 运输 | … | | 糖尿病南区 | … | … | 健康 | … | | … | … | … | … | … |数据的问题
当条目数量较少时,使用 Excel 跟踪查询者和本地服务效果很好。然而,这些电子表格变得非常大,难以管理。两个人不能同时编辑任何一个电子表格,因为 Connecting South Side 没有使用最新版本的 Excel。当员工等待电子表格可供编辑时,这会导致数据添加的延迟。由于办公室的繁忙性质,延误可能意味着案件档案中需要的信息无法获得。当后续的询问电话打进来时,如果电子记录没有更新,就会导致服务中断。有时电子表格的几个版本都在运行,这导致了混乱。
克莱尔担心办公室里的数据会出现越来越多的问题。她向以前的同事寻求帮助,并开始讨论实施更高版本的 Excel 或使用数据库的可能性。
除了数据管理之外,能够在过去的案例档案中搜索与目前的查询相似的案例也是有用的,这样工作就不会重复。文件资源管理器上的搜索工具支持一些搜索,例如对部分名称、文件内容和最后修改日期的搜索。例如,搜索“天主教”可以发现其他案例,如 Dorothy 的案例,涉及到想要去教堂的人。
然而,数据库提供了更复杂的搜索。例如,他们可以搜索与 Dorothy 年龄大致相同的人,他们住在同一地区,并且在他们的案例中有某些相似的关键字。第六章讨论在电子表格和数据库之间做出选择,第十二章讨论数据库搜索。
确定外部资金来源
对非营利组织工作的资助往往是固定的和短期的。这意味着新的和更新的资金来源总是令人感兴趣的。有许多政府基金、慈善基金会的拨款和直接捐赠可供使用,关于这些资金来源的详细信息通常存储在在线数据库中。各组织需要时间来筛选可用选项,并确定与其需求和目标完全匹配的融资机会。第十九章涉及搜索在线数据库。
“连接南方”在电子表格上记录了当前和潜在的捐赠者。目的是提示赠款申请的截止日期和提交最终报告的日期。
摘要
一个名为“连接南区”的小型非营利组织旨在改善居住在芝加哥南区的被社会孤立的人们的生活。
非营利组织将数据存储在许多 MS Excel 电子表格和 Word 文档中,随着非营利组织处理更多的查询,这些数据变得难以管理。用于连接南区的数据库的设计和实现将在以后的章节中介绍。
五、根据小型企业的目标调整数据库
为了让小型企业从数据库中获得最大收益,在设计数据库时必须牢记企业的目标、指标和杠杆。总的来说,目标旨在使业务朝着给定的方向发展,杠杆是可以改变的变量,目的是实现这样的发展,而指标衡量目标和杠杆的进展。本章详细解释了这三个组件。
有用的数据库是由业务目标形成的,大部分数据由指标组成。如果数据库设计得当,它生成的查询和报告将直接反馈到企业的决策过程中,使企业能够充分了解信息。(查询和报告在第一章的中介绍,并分别在第十二章和第十四章中详细解释。)
目标、杠杆和指标很少是一成不变的,尤其是在充满挑战的经济时期。因此,为了使数据库具有较长的寿命,它需要能够快速响应新的需求。这可能意味着向一个表中添加更多的表或更多的列。数据库设计的技术方面包含在第七章中,改变现有数据库的方法包含在第十五章的中。
以下章节展示了为 Smart 独轮车公司案例研究设定目标、杠杆和指标的示例,该案例研究在第二章的中介绍。你还会读到 Jennings-Havard 律师事务所和 Connecting South Side 案例研究的简短例子,分别在第三章和第四章中介绍。每个例子都显示了使用数据库来跟踪指标和提供关于杠杆和目标的数据的重要性。
如果所有的数据库分析都是由业务目标驱动的,那么这将是高度限制性的。对于小企业来说,尝试和惊喜的空间是有益的。数据库通常包含隐藏的信息,这些信息无法提前预测,但可能会很有用。例如,Smart 独轮车公司可能会发现,其超过一半的独轮车订单是在周六上午下的。这是一个对库存控制有用的事实,但不一定能提前预测。数据分析方法在第十三章中讨论。
此外,数据库结构的本质使一个数据表能够与其他表一起操作,而不管您的业务的目标、杠杆和指标如何。例如,这允许通过显示库存中是否有足够的独轮车来满足订单、是否需要制造更多的独轮车,以及如果需要,是否有库存来这样做,来加强智能独轮车公司的库存控制。
话虽如此,使用目标、杠杆和度量是数据库设计的逻辑起点,并且很有可能产生有用的数据库。
设定目标
小企业的目标应该受到其使命陈述的影响,因为使命陈述描述了该组织成立的原因及其背后的原则。例如,谷歌 2013 年的使命宣言是:
"Google's mission is to organize information all over the world and make it universally accessible and useful."
Ama zon 公司过去 18 年的使命是:
"Our vision is to become the most customer-centered company on the planet; Build a place where people can find and discover anything they might want to buy online. "
目标的设定是为了在使命宣言设定的背景下推动企业朝着某个方向发展。目标应该是对期望结果的陈述;它们以动词开头,但没有给出如何实现目标的信息。例子包括“增加利润”、“扩大客户群”和“削减成本”
目标通常分为长期目标和短期目标,长期目标通常会持续几年。短期目标是为了帮助公司实现长期目标。设定目标和实现目标是一个复杂的过程,因为许多外部因素可能会干扰,如从银行获得贷款、税收和利率变化、成本增加(如能源和燃料)以及技能短缺。此外,成长型企业会有多个目标,这些目标可能会发生冲突。举个非常简单的例子,如果一家公司只有两个目标——“保持高质量的产品”和“利润最大化”——它就必须在保持商品质量的约束下实现利润最大化。因此,它可以通过与供应商谈判更低的价格来增加利润,但它可能无法使用更便宜、质量更差的材料来生产产品。
识别杠杆
杠杆改变了目标的实现方式。通过确定一个可以“拉动”的杠杆,就有可能对一个相关的目标做出改进。杠杆是必要的,因为在考虑杠杆之前设定的目标是一个过程的结果,没有杠杆就不能改变。杠杆的例子包括“利用互补商品的销售来鼓励更大规模的客户交易”,以及“通过谈判降低供应价格来提高利润率”。
设计指标
猜测杠杆和目标进展如何是没有意义的。两者都需要是可测量的,以确保业务朝着其目标前进,并评估每个杠杆的影响有多大。这样的测量,被称为度量,允许杠杆被控制并且有希望被改进。
本节涵盖了指标的设计。指标和数据库紧密相连,因为作为指标结果收集的数据必须进行存储和分析。数据库是实现这一目的的理想工具。然后在数据库中生成查询和报告,这可以允许做出关于业务进展的决策。
大多数小企业使用一些指标,例如衡量利润和损失的水平。然而,除了绝对必要之外,许多人经常根据过去的经验、直觉或通过查看市场上的其他产品来操作(如第一章中所解释的)。
与销售相关的指标示例如下:
- 给定时间段内新客户端的数量
- 销售收入
制定指标时,以下因素很重要:
- 简单性:度量标准应该易于使用和解释。
- 数量:为了避免混乱,在给定的时间应该实现少量的度量。
- 质量:应该有可能为所有指标收集准确和完整的数据。
- 收集方法:度量不应该干扰操作或产生不合理的开销。
- 对员工的影响:度量标准不应该导致员工违背企业的最佳利益。
- 适当的尺度:应该设置度量来揭示适当大小的变化,以便采取行动来改进过程。
- 响应性:度量必须快速提供反馈,以便问题可以尽快被识别。
在度量标准确定之后,就可以建立一个“基线”。基线使用度量标准来衡量性能的当前状态,并可用于与未来状态进行比较。
虽然这看起来很明显,但是不要被指标冲昏头脑是很重要的。不是所有的东西都可以直接测量。在某种程度上依靠直觉可能会有所帮助。例如,你可能觉得你的客户会更喜欢一个更智能、更舒适的等候区,而度量标准不太可能会告诉你这一点。度量标准最好与常识和直觉一起使用,而不是作为任何一个的替代品。
案例研究:概述
下面将介绍在第二章–第四章中介绍的案例研究中目标、杠杆和指标的使用。每个案例研究部分都提出了使命陈述,它决定了组织所做一切的动机。然后,您将了解如何为 Smart 手推车公司和 Jennings-Havard 法律事务所设定目标。对于“连接南方”案例研究,使命和目标将反映资助该组织的赠款的目的和目标。对于每个组织,一个单一的目标被用来展示杠杆和指标的选择。
案例研究:智能手推车公司。
将为 Smart 独轮车公司确定使命陈述和潜在目标。我们将为其中一个目标提出潜在的杠杆,并建议可能的衡量标准。
使命陈述和目标
Smart 独轮车公司的使命是:
"Our goal is to become a customer-centered company, producing and selling high-quality and innovative wheelbarrows."
Smart 独轮车公司根据其使命陈述制定了一系列目标:
- 生产高质量,重量轻,折叠手推车和装饰手推车
- 确保员工对顾客友好并乐于助人
- 无条件保证产品,随时接受任何理由的退货
- 为员工提供一个充满机会的友好的工作环境
- 通过给予所有者和员工提出新想法的自由来促进增长
- 增加利润
下一节将详细考虑“增加利润”目标的杠杆选择。为每个级别考虑合适的度量:这些度量代表到潜在数据库的链接,因为以数据库的形式存储数据以执行测量是明智的。
增加利润
确定增加利润的合适杠杆的逻辑方法是确定构成利润的要素。
利润计算如下:
利润=收入-销售成本-管理费用
以下是对这些组件的描述:
- 收入是 Smart 独轮车公司的收入。在本例中,我们将假设这仅与其手推车的销售相关。在一个更复杂的例子中,其他形式的收入可能包括投资利息、服务费等。
- 销售成本是生产手推车的成本。这包括使用的材料和直接人工成本。
- 间接费用是企业的运行成本,包括租金、燃料和文具。
我们将依次讨论这些组件,并选择合适的杠杆。图 5-1 总结了增加利润的目标,以下章节将定期引用。增加利润的主要目标显示在图 5-1 的顶部,下面列出了增加收入、降低销售成本和减少管理费用的子目标。
图 5-1。
Subgoals and levers for the goal of Increasing Profits for Smart Wheelbarrows Inc.
增加收入
考虑到收入在创造利润中的作用,增加利润的一个方法是关注增加收入的子目标。对于每种类型的手推车,收入计算如下:
收入=手推车销售额 x 手推车零售价格
该公式为增加收入提供了两个潜在的子目标,如图 5-1 所示,它们可以一起使用,也可以单独使用:
- 增加销售数量
- 改变手推车的价格
增加销售数量
下面列出了可用于实现增加销售额的子目标、增加收入的子目标以及最终实现增加利润的主要目标的杠杆示例:
-
扩大地理市场区域:目前,Smart 手推车公司主要销售到美国东海岸。广告可以推广到全国。以下指标可用于衡量该杠杆在一段时间内的影响。
-
各州的销售数量
-
通过向各州销售获得的收入
-
基于现有市场的销售实现目标
-
确定新的客户群:客户群可以扩大到儿童。这种手推车类似于现有的小型手推车,但不需要昂贵的油漆。市场营销将针对玩具店。可以使用以下指标:
-
特定时期内儿童手推车的销售情况
-
儿童手推车销售收入占总收入的比例
-
儿童手推车的销售和收入与目标的比较
-
提供特别折扣:给购买一辆以上手推车的商家打折可能很有吸引力。私人和商业买家可能会对及时折扣感兴趣。可以使用以下指标:
-
给定时间段内打折销售的数量
-
获得的收入
-
达到的目标
-
接受信用卡:信用卡对客户很有吸引力,因为它们可以提供更大的便利和现金流。信用卡公司向零售商收取费用,但这些费用通常会被销售额的增长抵消。可以使用以下指标:
-
使用信用卡的销售数量
-
通过使用信用卡销售获得的收入
-
基于现有市场达到的目标
价格变动
影响收入的第二个子目标是价格,如图 5-1 所示。手推车的价格可以提高或降低。更高的价格意味着更高的销售收入,但销售总数可能会下降。如果价格降低,情况正好相反。
顾客出于不同的原因购买手推车;有些人购买是因为它们易于存放,有些人购买是因为他们想给朋友留下深刻印象。前一类人会欢迎降价,但对后一类人降价没有意义,因为他们购买奢侈品的信念可能会减弱。一般来说,客户很少对轻微的价格上涨做出反应,并且经常忽视它们。
衡量价格变化的一个合适的方法是,在相同的时间段内,将价格上涨后的销售数量与价格上涨前的销售数量进行比较。
降低销售成本
增加利润的第二个子目标是降低销售成本,如图 5-1 所示。用于制造手推车的材料成本是该组织最大的销售成本之一。以下三个杠杆旨在降低材料成本,同时不影响手推车的质量。
-
尽可能用成本较低的材料替代:比铝更便宜、更重的低碳钢可以用于“静态”手推车,因为它们不需要悬挂起来。所有的手推车都被涂上了油漆,因此使用低碳钢可能带来的生锈问题得到了缓解。相关指标:
-
在给定时间内,由于材料成本降低而节省的收入
-
由于材料成本的降低而导致销售成本的降低
-
减少浪费:铝或软钢的成本很高,因此在生产过程中丢弃的数量很重要,特别是随着时间的积累。直接从制造商处购买固定长度的管子。也许可以协商更短的长度,但仍能满足所需的数量,而且价格更低。相关指标:
-
在给定时间内,由于减少浪费而节省的收入
-
由于材料成本的降低而导致销售成本的降低
-
大量购买:在大量购买材料时,有可能利用折扣。这通常值得与供应商协商。相关指标可以是:
-
在一定时期内通过大量购买而节省下来的收入
-
由于大量购买供应品,销售成本降低
减少开销
利润等式的第三个组成部分是管理费用,和销售成本一样,为了促进利润的增长,管理费用需要下降。降低管理费用构成了利润增加的第三个子目标,如图 5-1 所示。以下三个杠杆有可能降低 Smart 独轮车公司的管理费用:
-
通过“无纸化”降低办公费用:Smart 独轮车公司可以避免打印,除非绝对必要。在可能的情况下,他们可以制作并发送电子发票和账单,并将所有重要的文书工作保存在电脑或云中。相关指标可能是:
- 给定时间内节省的办公用品费用
- 由于削减办公费用而节省的间接费用比例
- 由于削减办公费用而节省的办公费用比例
-
通过使用数字媒体减少广告支出:Smart 独轮车公司可以免费开通商业脸书和 Twitter 账户,并削减更传统形式的广告支出。相关指标可能是:
- 引入数字媒体后节省的广告费用
- 由于使用数字广告而节省的开销比例
- 由于使用数字广告而节省的广告比例
存储适当的数据以涵盖指标
为了展示目标、杠杆和指标之间的联系,下表给出了一个可以为上一节介绍的指标捕获和存储的数据示例。它并不打算是全面的。在第七章的中,您将了解到不建议使用派生数据来设计数据库——例如,使用包含总销售额的列。考虑到这一点,表 5-1 不包括衍生数据。
表 5-1。
Sample Data Corresponding to the Metrics Used by Smart Wheelbarrows Inc.
| 附属目标 | 公制的 | | --- | --- | | 收入 | 每个交易日期每个产品的销售数量每个产品的交易价格涉及折扣的客户销售地址涉及信用卡的销售 | | 销售成本 | 根据每种类型、长度和材料供应商购买的数量根据每种类型、长度和材料供应商支付的每笔交易价格的日期 | | 开销 | 每种办公文具的购买数量,每笔交易的日期,每种办公文具的价格,每种广告投资的成本,尽可能细分到每笔广告投资的日期 |案例研究:詹宁斯-哈佛律师事务所
以下部分确定了 Jennings-Havard 律师事务所的潜在目标。这些部分还将建议其中一个目标的潜在杠杆,并提出合适的衡量标准。
使命陈述和目标
Jennings-Havard 律师事务所的使命是:
"Jennings-Havard Law Firm aims to provide affordable, high-quality, customer-centered estate planning, trust management, probate and long-term care planning services for all kinds of people."
根据本使命声明,詹宁斯-哈佛律师事务所制定了以下目标:
- 保持低成本,使小时费率具有竞争力
- 始终关注、尊重和耐心地对待客户
- 提高客户保持率
- 吸引新客户
- 鼓励所有合作伙伴和员工提出新想法
- 增加增长
- 提供一个愉快且高效的工作环境
下一节考虑“提高客户保持率”目标的杠杆选择。
提高客户保持率
留住客户的成本远低于获得客户的成本。因此,留住客户是詹宁斯-曼宁律师事务所的一个重要目标。可以用来提高客户保持率的三个杠杆的例子如下:
- 最大化客户互动:公司与客户的互动越多,他们离开的可能性就越小。例如,可以鼓励客户注册公司的时事通讯,在公司的博客上发表评论,并在 Twitter 上关注公司。指标:接收时事通讯/在博客上发表评论/在 Twitter 上关注的新客户数量
- 确保客户对他们接受的服务满意:可以要求客户定期反馈。在最糟糕的情况下,公司可以确保员工明白,如果他们得知客户要离开,该怎么做。例如,他们可以安排一次会议来讨论哪里出了问题,并从账单中扣除一小部分。度量:提供反馈的客户比例,好的和坏的
- 随着时间的推移,满足客户的需求:客户通常会停止使用某项服务,因为他们认为自己不再需要它了。了解客户需求如何发展并向他们推销服务是很重要的。例如,遗产规划可能会转移到对长期护理规划的需求。指标:回头客数量,现有客户推荐的客户数量
案例研究:连接南区
第四章描述了一个由赠款资助的非营利组织“连接南边”的案例研究。奖助金上所述的目标可视为其使命陈述,其目标构成其目标:
目标:改善生活在芝加哥南部来自不同背景的社会孤立人群的生活。
目标:
To make contact with a minimum of 1,000 socially isolated people living on Chicago’s South Side, roughly two per day during the work week, over the two-year period. To take enquiries from those of diverse age, ethnic origin, neighborhood, and health. To publicize the service in all areas of the community. To link the enquirers to organizations that can help them move away from social isolation. To identify gaps in services.
以下杠杆可用于目标 1:
- 出席相关的社区活动
- 鼓励从其他非营利组织推荐
- 在公共场所做广告,如图书馆、教堂、当地商店和咖啡店
指标:连接南区的查询数量。如果这等于或大于 Connecting South Side 已经运行的工作日数的两倍,则该组织符合目标。
Note
之前的指标(查询次数)可能会鼓励员工做出违背组织最佳利益的行为。查询的数量并不反映每个查询所付出的努力,可能会无意中鼓励工作人员匆忙完成查询。为了缓解这个问题,组织可能还会收集涵盖每个查询的呼叫数量的指标。
摘要
对于有用的数据库,它需要与业务目标相关联。这意味着直接从目标开始开发数据库的内容。目标受到杠杆的影响,杠杆被“拉动”以在给定的方向上产生变化。指标衡量目标和杠杆的变化。为指标收集的数据存储在数据库中。
进一步阅读
《营销度量:衡量营销绩效的权威指南》,保罗·w·法里斯、尼尔·t·本德尔、菲利普·e·普费菲和大卫·j·赖伯斯坦。皮尔逊 FT 出版社;第二版,2010 年,ISBN-13: 978-0137058297。
《衡量营销:每个营销人员都需要的 110+个关键指标》,约翰·A·戴维斯著。约翰·威利父子公司;第二版,2013,ISBN-13: 978-1118153741。
六、在电子表格和数据库之间选择
小型企业经常使用电子表格,而数据库可能更合适。这通常是由于对电子表格的广泛熟悉以及开始有效使用它们所需的较短的学习曲线。一次又一次,内部缺乏关于数据库及其潜在好处的知识。
本章旨在通过解释电子表格的局限性,它们如何导致困难,以及数据库如何克服这些问题,来帮助您决定数据库是否会对您的小型企业有益。它旨在让您注意到这些问题,并警告您随着数据量和复杂性的增加,这些问题可能会变得更加严重。有些情况下,电子表格对于数据处理来说绰绰有余,我无意误导您。相反,我想警告你使用电子表格作为数据库的陷阱,这样你就不会陷入一场你本可以避免的危机。
概观
这本书假设你熟悉电子表格。正如您在前面章节中看到的,电子表格和数据库有许多相似之处。鉴于此,您可能想知道为什么您应该考虑使用数据库。在电子表格和数据库之间进行选择,并不是提供一系列标准让您能够快速做出决定。这样的决定可能取决于多种因素。
您不必立即决定是否迁移到数据库。如果在阅读完本章之后,您决定将数据操作转移到数据库中,那么您可以从采取一些小步骤开始,为以后的转换准备数据。按照本章中的建议,您可以学习如何在电子表格中有效地组织数据,这将在您获取大量数据时节省您的工作。
将数据转移到数据库并不意味着你不能使用电子表格。大多数数据库允许数据在数据库和电子表格之间方便地来回移动。所以,如果你习惯使用电子表格格式,你就不必把它留在身后。事实上,许多企业选择同时使用数据库和电子表格,以便利用两者的优势。
你的业务目标可能会帮助你决定是电子表格还是数据库更合适。如果您的目标相当简单,并且将反映在数据的一维增长中,例如,唯一变化的数据项是客户数量,那么您的数据的复杂性不太可能发生很大变化。然而,如果目标是引入新产品,开始新的宣传活动,并遵循新的指标,您的数据可能会变得更加复杂。电子表格处理数据的效率可能会降低,转移到数据库可能更合适。
就软件而言,数据库不是电子表格的唯一替代品。例如,在第三章中,为法律事务所案例研究展示了许多基于网络的软件解决方案,包括任务管理、案例状态和时间跟踪。通过展示数据库的强大功能,本章使您能够将数据库的优势与电子表格之外的软件进行比较。然而,重点是电子表格。
随着电子表格包的发展,在电子表格包中运行数据库类型的结构已经成为可能。比如 Excel 2013 可以处理很多数据库特征,比如链接表。因此,选择不一定是在数据库包和电子表格包之间,而是在数据库的概念和电子表格的概念之间。
下面几节介绍了在决定使用数据库而不是电子表格时需要考虑的问题。数据复杂性得到了最多的关注,因为它是最相关的问题,并且经受住了时间的考验,不管技术如何改进。
数据复杂性
随着数据变得越来越复杂,将数据从电子表格转移到数据库可能是个好主意的迹象开始出现。这并不一定关系到数据的实际数量,而是数据中不同“主题”或“主题”的数量。例如,在第一章中介绍的 Cards for Everyone Inc .的数据库中包含四个主题——客户、发票、产品和供应商。
一份简单的清单
如前所述,对于一个简单的、孤立的列表,电子表格可能就足够了。一个例子是客户列表。即使列表变得很长——多达几千行——电子表格也足够了。例如,从 MS Excel 2007 开始,MS Excel 电子表格可以处理超过一百万行。
但是,如果您在多个列中有数据,并且这些列之间有关系,那么电子表格会很快变得复杂和麻烦,如下一节所示。
重复数据
随着电子表格中包含的列数的增加,重复数据或数据冗余的可能性变得更大。数据冗余的一个非常简单的例子出现在 Smart 独轮车公司在第二章中使用的电子表格中,其中邮政编码在表 2-3 和 2-4 中重复。为了说明这个问题,这些表在这里再次显示为表 6-1 和 6-2 。
表 6-2。
Basic Invoices Spreadsheet from Smart Wheelbarrows Inc.
| 名字 | 邮政区码 | 日期 | 金额(美元) | | --- | --- | --- | --- | | 光明花店 | 纽约州 11375 | 。。。 | 。。。 | | 希拉里·史密斯 | 马 02108 | 。。。 | 。。。 | | 布利斯花园中心 | RI 02886 | 。。。 | 。。。 |表 6-1。
Basic Customer Spreadsheet from Smart Wheelbarrows Inc.
| 名字 | 邮政区码 | 电话 | 电子邮件 | 种类 | | --- | --- | --- | --- | --- | | 光明花店 | 纽约州 11375 | 。。。 | 。。。 | 商业 | | 希拉里·史密斯 | 马 02108 | 。。。 | 。。。 | 商业 | | 布利斯花园中心 | RI 02886 | 。。。 | 。。。 | 消费者 |显然,如果数据存储在多个地方,任何更改都需要多次进行。例如,如果希拉里·史密斯的邮政编码发生变化,那么需要对表 6-1 和 6-2 进行相同的编辑。因此,与将数据存储在一个位置的情况相比,编辑可能不太可靠。此外,冗余数据还会占用不必要的磁盘空间,尽管这并不是当前的优先考虑事项。
在本例中,通过从客户电子表格或发票电子表格中删除邮政编码列,可以很容易地解决邮政编码重复的问题。然而,电子表格上的许多数据冗余问题无法以如此直接的方式解决。假设来自 Cards for Everyone Inc .的客户和发票数据存储在一个电子表格中,如表 6-3 中前三张发票所示。这种布局的原因可能是为了保持客户数据和发票数据紧密关联,并且在查看电子表格时可见。
表 6-3。
Combined Customer and Invoice Spreadsheet
| 用户姓名 | 邮政区码 | 电子邮件 | 日期 | 金额(美元) | | --- | --- | --- | --- | --- | | 加西亚 | 米 48823 | Lgarcia@。。。 | 11/4/14 | Seventeen | | 约翰·威廉姆斯 | 或者 97062 | Jwilliams@。。。 | 11/4/14 | Two point five | | 史蒂夫·琼斯 | FL 33901 | Sjones@。。。 | 11/4/14 | Fourteen |当约翰·威廉姆斯下第二个订单时,有两种主要的方法可以将这些数据插入到表格 6-3 的电子表格中。
首先,可以为约翰·威廉姆斯的第二个订单插入一个新行,如表格 6-4 中的电子表格所示。
表 6-4。
Combined Customer and Invoices Spreadsheet with Extra Row for John Williams
| 用户姓名 | 邮政区码 | 电子邮件 | 日期 | 金额(美元) | | --- | --- | --- | --- | --- | | 加西亚 | 米 48823 | Lgarcia@。。。 | 11/4/14 | Seventeen | | 约翰·威廉姆斯 | 或者 97062 | Jwilliams@小行星编号:jwilliams @小行星编号:jwilliams @小行星编号:jwilliams @小行星编号:jwilliams @小行星编号:jwilliams @小行星编号-什么 | 11/4/14 | Two point five | | 史蒂夫·琼斯 | FL 33901 | Sjones@.. | 11/4/14 | Fourteen | | 约翰·威廉姆斯 | 或者 97062 | Jwilliams@小行星编号:jwilliams @小行星编号:jwilliams @小行星编号:jwilliams @小行星编号:jwilliams @小行星编号:jwilliams @小行星编号-什么 | 12/14/14 | Five |但是,这一行创建了关于约翰·威廉姆斯邮政编码和电子邮件地址的冗余数据。虽然这种性质的重复不会造成太大的问题,如果你有少量的订单,几个订单后,它可能会成为一个问题。这是因为对约翰·威廉姆斯邮政编码和/或电子邮件地址的任何更改都需要在几个地方进行,从而浪费时间并有出错的风险。如果其他几个客户也下了多份订单,问题会更加严重。
其次,可以在约翰·威廉姆斯的记录旁边放置新的列来捕获关于他的第二个订单的数据,如表格 6-5 中的电子表格所示。这将避免对关于邮政编码和电子邮件地址的冗余数据的潜在需求。然而,这种方法很快就会变得非常混乱。比方说,如果约翰·威廉姆斯在一年的时间里总共下了 20 个订单,那么目前的电子表格将有 40 个额外的日期和金额列。搜索特定日期的特定订单需要扫描许多列,或者在自动搜索工具中输入公式。
表 6-5。
Combined Customer and Invoices Spreadsheet with Extra Columns for John Williams
| 用户姓名 | 邮政区码 | 电子邮件 | 日期 | 金额(美元) | dota2 | 金额 2(美元) | | --- | --- | --- | --- | --- | --- | --- | | 加西亚 | 米 48823 | Lgarcia@。。。 | 11/4/14 | Seventeen | | | | 约翰·威廉姆斯 | 或者 97062 | Jwilliams@小行星编号:jwilliams @小行星编号:jwilliams @小行星编号:jwilliams @小行星编号:jwilliams @小行星编号:jwilliams @小行星编号-什么 | 11/4/14 | Two point five | 12/14/14 | Five | | 史蒂夫·琼斯 | FL 33901 | Sjones@.. | 11/4/14 | Fourteen | | |出现这些问题是因为在同一个电子表格中有与多个主题相关的数据。该电子表格是关于发票的,但它也包含关于客户的数据。
数据库设计的目的是组织数据以使冗余最小化:更多细节在第七章中给出。为每个主题创建一个单独的表,目的是数据只占用它需要的空间。这样,就有可能找到一张发票,检查相应的客户唯一标识符,然后在 Customers 表中找到客户的详细信息:数据库会自动创建这些链接,而不需要用户参与详细信息。同样,可以通过 Customers 表中的客户唯一标识符来标识客户,并且可以从 Invoices 表中提取具有该客户唯一标识符的所有发票记录。虽然有两个表,但是每个客户和每张发票在系统中只有一个条目。这导致更有效的更新、数据存储和数据检索。
在 Cards for Everyone Inc .的数据库中,有关发票和客户的数据被拆分并链接到一个数据库中,这消除了前面讨论过的冗余问题。表格 6-6 和 6-7 展示了如何将约翰·威廉姆斯的订单添加到 Cards for Everyone Inc .数据库中,没有冗余数据,也没有额外的列。每个表格中的所有内容都与一个主题相关。
表 6-7。
Basic Invoice Table
| 发票号 | 客户 ID | 日期 | 金额(美元) | | --- | --- | --- | --- | | One thousand and one | one | 11/4/14 | Seventeen | | One thousand and two | Two | 11/4/14 | Two point five | | One thousand and three | three | 11/4/14 | Fourteen | | One thousand and four | Two | 12/14/14 | Five |表 6-6。
Basic Customer Database Table
| 客户 ID | 名字 | 邮政区码 | 电子邮件 | | --- | --- | --- | --- | | one | 加西亚 | 米 48823 | 天主教霍特 mail.com 教区 | | Two | 约翰·威廉姆斯 | 或者 97062 | Jwilliams @gmail.com | | three | 史蒂夫·琼斯 | FL 33901 | Tiones @aol.com |维护电子表格之间的关系
即使删除了电子表格中的冗余,仍然存在维护它们之间准确关系的问题。这个问题在数据库中通过使用数据组织中的许多逻辑步骤来解决,这些逻辑步骤使得数据能够在多个表中自动更新和删除。这在第七章中有详细解释。在电子表格中,通常需要手工操作。
例如,假设 Cards for Everyone Inc .正在为产品和供应商制作单独的电子表格,见表 6-8 和 6-9 。
表 6-9。
Basic Supplier Spreadsheet for Cards for Everyone Inc.
| 供应商名称 | 邮政区码 | 电话 | 电子邮件 | | --- | --- | --- | --- | | 特殊场合 | IA 52241 | 319-xxx-xxxx | 管理员@特殊 occasions.com | | 旧的最爱 | CA 92591 | 503-xxx-xxxx | 旧 favorites.com 办公室 | | 手工卡片 | FL 33351 | 954-xxx-xxxx | 查询@手 madecards.com |表 6-8。
Basic Product Spreadsheet for Cards for Everyone Inc.
| 产品名称 | 供应商名称 | 种类 | 价格(美元) | 可用数量 | | --- | --- | --- | --- | --- | | 猫 | 特殊场合 | 生日 | Two | five | | 玫瑰 | 旧的最爱 | 谢谢你 | Three | eight | | 船 | 旧的最爱 | 生日 | Two point five | Ten | | 心 | 手工卡片 | 情人 | Four point five | nine | | 兔子 | 手工卡片 | 新生婴儿 | Five | Eleven |如果其中一个供应商停止交易,您可能希望将他们从供应商电子表格中删除。你可能还想移除他们提供的任何卡片,这样你就不会浪费时间去订购它们,或者更糟的是,向客户做广告。例如,如果“手工制作的卡片”停止交易,您需要从表 6-8 中移除“红心”和“兔子”。
从包含连接数据的电子表格中手动删除条目会变得非常耗时,并会导致错误。而且,如果 Cards for Everyone Inc .使用该供应商的其他电子表格,这些条目也必须从这些电子表格中删除。
如果一组电子表格仅由一个人维护,那么这种修改可能会可靠地执行,即使它们很费力。但是,如果不止一个人负责更新电子表格,或者如果人员发生变化,那么数据不匹配的可能性就会高得多。
在数据库中,可以指定关于表更新的某些规则。有了这样的规则,一个表中的更新不能在相关表中没有更新的情况下发生;如果在其他表中没有相应的删除,就不能从一个表中删除数据。这样的规范有助于避免数据不一致。例如,Cards for Everyone Inc .不想错过向新客户发送发票,因为发票已被添加到发票表中,但没有相应的客户被添加到客户表中。如果他们使用数据库,这是可以避免的。
数据复杂性概述
如果您发现您的企业花费大量时间将相同的数据输入到多个电子表格中,那么您已经为数据库做好了准备。数据库减少了必要的数据输入量,从而减少了潜在的打字错误。
数据库使得在一个地方存储数据和在多个地方引用数据变得容易。例如,客户数据可以存储在包含姓名、地址、电话号码、电子邮件等的表中。然后可以在其他地方引用它,例如在查询、窗体和报表中。
Note
第一章中介绍了查询、表格和报告。查询在第十二章中详细讨论,表格在第十章中讨论,报告在第十四章中讨论。本书末尾的附录描述了如何建立一个简单的查询、表单和报表。
如果客户的数据发生变化,在使用数据库时,您只需在一个地方更改该信息。新数据将在引用它的所有查询、窗体和报表中自动可见。
作为最后的评论,如果对你的电子表格的修改不经常发生,这些论点就失去了它们的分量。这个决定是一个只有你才能做出的平衡。
数据将被使用的时间段
下一个决策点涉及您将花费在数据上的时间。对于偶尔的简短数据分析,电子表格已经足够了——对于一个简短的项目来说,学习数据库技术是多余的。使用电子表格不需要很长时间就能变得高效,而且非常灵活。现在很少有人不会使用基本的电子表格。
但是,如果您需要随着时间的推移分析相同的数据,并且这些数据很复杂,那么数据库可能会有所帮助。一旦你需要搜索数据,内置的电子表格功能可能是不够的。你需要编程技能来实现搜索,很少有电子表格用户具备这些技能。
用户数量
另一个重要的决策点涉及到在任何给定时间需要访问数据的人数。如果一次只有一个人访问数据,那么继续使用电子表格是可能的,尽管在某些情况下很有挑战性。有必要清楚地说明电子表格系统是如何工作的,以防将来维护电子表格的责任被转移。
如果有很多人使用同一个电子表格,避免错误会很困难。在过去的几年中,共享文档的选择要么是通过电子邮件附件,要么是将副本放在办公室的共享驱动器上。跟踪几个用户的版本和编辑可能是困难和耗时的。如今,电子表格可以存在于云中,由几个用户使用,例如,通过使用 Excel Web 应用程序。云在第十八章中详细讨论。
无论用什么方法存储电子表格,出错的风险都很高,尤其是那些没有经验的人。例如,对电子表格中的单个列进行排序而不扩展到其他列会破坏电子表格,并导致返回到以前的版本和浪费工作。这是那些不经常使用电子表格的人经常犯的错误。
一般来说,最好保持电子表格的用户数量较少,并对他们进行全面的培训。有了数据库,用户可以同时访问数据,并且更容易设计查看数据的方法,而不会导致数据本身的更改,例如,通过表单。
Note
第一章中介绍了表格。附录描述了如何创建简单的表单。
仅仅让几个用户使用同一个电子表格不足以证明单独使用一个数据库是正确的。例如,让几个用户修改包含简单客户列表的电子表格是可以接受的,因为这并不难管理。但是让几个用户访问一个更复杂的电子表格会导致严重的复杂化。在这种情况下,数据库可能更有效。
对报告的要求
如果您需要定期生成报告,很可能需要一个数据库。使用电子表格时,电子表格和报表不是独立的。当您构建电子表格时,数据被格式化和排列,以便得到所需的报告。对于数据库,数据和报告功能是不相连的,这使您能够使用相同的数据生成多个报告,从而提供了灵活性和效率。
例如,您可能希望生成以下三个报告:
- 按季度的总销售额
- 按地区划分的年销售额
- 按产品类型划分的月销售额
这些报告都涉及销售数据的使用。数据库允许您使用查询从一个数据源生成所有三个报表,而不是维护三个包含重复数据的电子表格,无需复制和粘贴。
Note
第一章中介绍了查询。附录描述了如何设置一个简单的查询。
这种方法节省了时间,并且不容易出错,因为报告是直接从数据库生成的,而数据库是对数据进行更改的唯一地方。这又回到了前面讨论的冗余数据的问题:如果您有相同数据的几个副本,除非您高度警惕,否则您无法保证它们在任何一个时间都被更新。
两全其美
正如本章开始时提到的,选择将数据转移到数据库并不意味着您不再有使用电子表格的选择。在许多情况下,两者的结合是最好的方法。您可以将数据存储在数据库中,从而运行高级报告和查询。反过来,这些报告和查询可以移动到电子表格中进行更深入的分析。电子表格的优势在于它们能够使用高级公式进行单独的复杂计算。
摘要
决定使用电子表格还是数据库是一个不断变化的过程。技术不会停滞不前。例如,如您所见,数据量不再像过去那样是一个重要的考虑因素。随着云的使用,多用户访问的功能对于电子表格来说不再是问题。然而,电子表格不能有效地处理多主题数据,导致需要在几个地方存储数据。这是低效的,并且可能导致键入和不匹配错误。数据库非常适合将数据集中在一起、分离主题、将表链接在一起、实现高效的数据存储以及更新和检索数据。您还可以从数据库中快速准确地创建报告。
如果您的数据包含许多主题,并且这些主题会随着时间的推移而存储,并且会定期更改,那么采用数据库是有意义的。
如果您已经阅读完本章,并且已经决定要迁移到一个数据库,请放心,您不需要现在就迁移,也不需要一下子就迁移。你可以采取小步骤,这将有助于你以后做出更有效的行动。例如,您可以考虑数据中包含的主题以及您拥有的冗余数据量。你可以考虑将一些电子表格分成单独的主题。这些步骤将使你在进行转换时减少工作量。不管怎样,正如第十五章所示,期望所有关于数据库设计的决定都提前做出是不现实的。随着业务的发展,会发生一些变化。数据库很少是静态的。
七、设计您的小型企业数据库
一个设计良好的数据库将易于使用,易于调整,并提供可靠的输出。另一方面,一个糟糕的设计最初可能仍然有效,但很可能会随着时间的推移而恶化。可能会出现问题,例如错误的或丢失的数据,最终,数据库可能会被企业完全丢弃。
在设计数据库时,有一些准则可以帮助避免问题,但这些准则并没有涵盖所有标准。例如,影响数据库设计的大部分因素来自于第五章中讨论的业务目标和杠杆。这些有助于你找到出发点和专注的方向。因此,除了满足一组规则之外,您的数据库设计是灵活的。
本章将引导您完成数据库的设计步骤,从没有数据库的地方开始,一直到有链接表结构的地方。
数据库设计过程
设计过程包括以下步骤:
Familiarizing yourself with the purpose of your database. Identifying and organizing the required data. Dividing the data into tables made up of columns. Refining your design by adding a few rows of sample data to test that you obtain the desired results. Defining and setting up the relationships between the tables. Applying “rules” to ensure that the tables have been structured efficiently. Developing queries and reports. Documenting your database design for future users.
确定数据库的用途
在开始设计数据库之前,明确小型企业的目标、杠杆和指标非常重要。如果您不花时间规划项目的需求并确定数据库将如何满足这些需求,则整个项目很可能会失去方向,并且远不如原来有用,从而浪费时间和金钱。
首先为你的数据库写一个任务声明。例如,Cards for Everyone Inc .的声明可以是
"The database will be used to track invoices from customers and coordinate the supply of cards."
这样的陈述将帮助你在设计过程中更容易地做出决定。
如果不止一个人将使用数据库,描述他们的角色会很有帮助——每个人何时以及如何与数据库交互。在 Cards for Everyone Inc .的例子中,三个雇员(Pat、Zeph 和 Leona)中的每一个都将与数据库进行交互。他们的作用可以概括如下:
- 经理 Pat 将更新数据库的详细信息,输入新客户、发票和供应品的详细信息。
- 助理 Zeph 和 Leona 将使用数据库检查所需物品的库存。
此外,您必须定义数据库要求,例如“必须能够生成每月销售报告”起草样本输入表单、查询和报告也是有益的。显然,不可能预测数据库必须满足的每个需求和可能出现的每个问题,但是尽可能防止潜在的遗漏是很重要的。
确定要输入数据库的数据
一旦确定了数据库的用途,下一步就是收集需要存储的数据。从您现有的数据开始是一个很好的地方。
如果你使用电子表格,你可以从列标题列表开始。或者,如果您一直使用纸质记录,所使用的每种类型的数据都可以放在一个列表中(例如,您在表单上填写的每个框)。
另一个选择是使用数据库的使命陈述作为指导方针,从头开始制作你的清单。完成后,您可以检查是否覆盖了所有现有数据。
在所有情况下,当你准备这个清单时,写下你想到的每一项。不要在这个阶段担心列表的结构,因为你可以在以后整理它。如果其他人将使用数据库,也询问他们的想法。
接下来,考虑您希望从数据库生成的查询、表单、报告或邮件的类型。例如,您可能希望按地区报告销售额,或者显示产品库存水平。想象一下报告会是什么样子,会包含哪些数据。列出将出现在您预期创建的每个报告中但尚未出现在您的列表中的每个数据项。
假设您为客户提供了接收电子邮件简讯的机会,并且您想要提取所有选择接收该简讯的人的列表。为了获取这些数据,您可以在数据库中添加一个“时事通讯”栏。对于每个客户,您可以将该列的值设置为 Yes 或 No,这取决于他们是否希望出现在列表中。
本章末尾展示了三个完整的数据库设计示例,分别对应于第二章–第四章中的案例研究。
收集完这些数据后,就可以开始下一步了。
创建表格
数据库由链接表组成。以下部分描述了如何创建和填充您的表。
表格的内容
如第一章所示,表格由行和列组成。行和列可以以任何顺序插入。表格用于表示主题,即现实世界中的对象。Cards for Everyone Inc .中真实世界对象的一个示例是客户、发票、供应商或产品。
小企业的数据很少简单到可以用一个表来表示,一般来说,数据库是由链接在一起的表组成的。数据库允许使用查询、表单和报表将存储在表中的数据放回一起。
数据库基于每个表代表一个主题的原则。一旦选择了由表表示的主题,下一步就是选择表中存储主题数据的列。例如,Cards for Everyone Inc .中的 Products 表应该只存储有关产品的数据。例如,尽管供应商的地址与产品相关,但它是关于供应商的事实,而不是关于产品的事实。它属于供应商表。
要确定表中的列,请确定要存储的关于表所表示的主题的数据。例如,在 Cards for Everyone Inc .中的 Customers 表中,列有名字、姓氏、邮政编码、电话和电子邮件。稍后将介绍客户 ID。
表中的每一行都包含一组相同的列,因此可以为每个客户存储相同类型的数据。
一旦确定了每个表的初始列集,就可以进一步细化这些列。例如,将每段数据分成最小的有用部分通常是有意义的,因为将数据项收集在一起比将它们分开容易得多。就姓名而言,为了使姓名的每个组成部分都易于使用,可以将姓名分成三部分:头衔、名字和姓氏。结果是一个更加灵活的数据库,因为,例如,一份报告可以按姓氏排序,或者您可以创建写给琼斯先生和史密斯夫人的信,这通常比写给约翰·威廉姆斯先生和史密斯小姐更合适。丽莎.加西亚。类似地,地址由几个独立的部分组成:例如,地址行 1、地址行 2、城市、州、邮政编码和国家/地区。如果您想要操作数据,例如按照地址的一个组成部分(例如邮政编码)进行排序,您将需要将邮政编码存储在单独的列中。
命名列和表
您为列和表指定的名称非常重要。清晰的名称使数据库的当前和未来用户能够理解列或表的预期用途以及它存储的数据的性质。在 Customers 表中,FirstName 的一个不好的替代示例可能是 FName,甚至是 FN。这些名称无法立即识别,会减慢进度。
避免在列名中使用空格,如产品 id。虽然我并不建议您在本书中进行任何编程,但是包含空格的列名对程序员来说是一个问题,所以避免它们是一个好的做法。有许多可能的替代项,如 Product_ID、productID 和 ProductID。此外,最好避免在名称周围放置引号或括号,例如“产品 ID”和[产品 ID]。
您需要为列选择合适的数据类型。常见的数据类型包括整数、文本、日期/时间和是/否。
唯一标识符
表中的每一行都应该是唯一的,这样它就可以用来将表链接在一起,或者在搜索中被识别而不会混淆。通过为表中的每一行指定一个包含唯一值的列(或多个列),可以保证表的唯一性。自然存在的列是唯一标识符的首选。
Note
唯一标识符在形式上被称为主键,但在本书中将被称为唯一标识符。
唯一标识符应该具有以下属性:
- 它们应该尽可能静止不动。客户的电话号码不是一个好的选择,因为它可能会改变。
- 通常最好使用数字(例如产品 ID)作为唯一标识符,而不是文本列,因为这样可以避免拼写错误和名称更改的问题。
- 唯一标识符不应包含缺失数据。这很重要,因为如果缺少唯一标识符,就不能直接标识或引用表中的行。一些数据库包(如 MS Access)会自动确保每个唯一标识符都有一个值。
Note
Cards for Everyone Inc .中的一些数据库表包含来自其他表的唯一标识符。例如,“产品”表包含一个列,其中包含供应商 ID。这种唯一标识符在数据库文献中被称为外键。以这种方式使用唯一标识符将表链接在一起,这将在本章后面的表关系一节中介绍。
测试数据库:第 1 阶段
为了测试您的初始数据库设计,开始熟悉一个数据库包会有所帮助。正如第一章中提到的,如果您正在使用 MS Office,MS Access 可能已经对您可用。一些开源软件套件包括数据库包,如 LibreOffice 和 OpenOffice。
作为一个例子,图 7-1 显示了从 Cards for Everyone Inc .创建 Customers 表的初始步骤。以类似的方式,选择一个您自己的表,给它命名并创建它的列。
图 7-1。
Creating a new table in MS Access 2013 Note
本书末尾的附录提供了关于从头开始创建数据库和表的更详细的说明。以 MS Access 2013 和 LibreOffice 5 Base 为例。
然后,为每一列分配一种类型。对每个表重复这些步骤。
Note
根据您使用的数据库包,创建表的过程会有所不同。通过内部帮助工具和/或在线工具,您的数据库包将提供说明。在谷歌上直接搜索也会有所帮助。
我写这一章的目的是在我认为会妨碍理解的地方删掉数据库术语。然而,当您使用数据库包时,您可能会遇到不熟悉的术语。例如,在图 7-1 中,左上角有一个主键图标,表示表格的唯一标识符。总的来说,不要被你不认识的术语所困扰。
一旦创建了草稿表,请在每一行中输入数据。图 7-2 显示了 Everyone Inc .卡的客户表中的行数据。这些表应该很熟悉,因为它们非常像电子表格。
图 7-2。
Adding data to a new table in MS Access 2013 Note
可以将数据从电子表格直接加载到数据库中。这一步更快,有助于防止打字错误。例如,您可以将 MS Excel 电子表格中的数据直接加载到 MS Access 中。这涉及到一个导入步骤,在本书末尾附录的外部数据部分有所涉及。
以这种方式创建数据库有效地开始了设计测试过程。当您输入数据时,设计中的缺陷可能会变得很明显。作为指示,如果您发现自己在多个地方重复相同的数据,请考虑将该数据放在一个地方或开始一个新表。例如,不需要将客户名称放在 customer 表和 Invoices 表中:存放这些数据的最佳位置是 Customers 表,因为它包含关于客户的数据。
创建表关系
由不相连的表组成的数据库没有什么用处。你也可以用电子表格来代替。设计数据库的一个关键部分是识别表之间的关系。
关系的类型
有三种主要类型的关系,在下面的章节中描述。
一对一的关系
如果对于第一个表中的每一行,第二个表中最多有一行,则两个表以一对一(1-1)关系相关。在现实世界中不太可能找到一对一的关系。
出于安全或性能方面的考虑,当您必须将一个表拆分为两个或更多个表时,一对一关系在数据库中可能是必要的。例如,如果为 Everyone Inc .的 Cards 创建了两个表,一个用于 Employees,另一个用于 EmployeeSalary,则可以将数据库设计为只有经理 Pat 有权访问 Salary 表。为了实现这一点,两个表通过它们的唯一标识符 EmployeeID 以一对一的关系连接在一起,如图 7-3 所示,在两个表之间使用一条两端带“1”的线。以一对一关系相关的表应该总是具有相同的唯一标识符。
图 7-3。
One-to-one relationship
一对多关系
一对多(1-M)关系是最常见的。在下列情况下,两个表以一对多关系相关:
- 对于第一个表中的每一行,第二个表中可以有零行、一行或多行
- 对于第二个表中的每一行,第一个表中正好有一行
例如,Cards for Everyone Inc .的每个客户可以有多张发票,但每张发票只能指向一个客户。在图 7-4 中,客户表旁边有一条“1”的线,发票表旁边有一个无穷大符号。再比如,一个供应商可以供应多种产品,但每种产品只能由一个供应商供应。一对多关系也称为父子关系或主从关系。
图 7-4。
One-to-many relationship
多对多关系
当对于第一个表中的每一行,第二个表中可能有许多行,并且对于第二个表中的每一行,第一个表中可能有许多行时,两个表以多对多(M-M)关系相关。多对多关系必须分解为两个一对多关系。例如,在 Cards for Everyone Inc .中,一张发票可能包含几个产品,一个给定的产品可以出现在多张发票上。因此,如图 7-5 所示,Invoices 表通过第三个链接表与 Products 表相关,该链接表通过包含每个表中的唯一标识符,为产品和发票之间的关系的每次出现包含一行。
图 7-5。
A many-to-many relationship changed into two one-to-many relationships
表之间的关系
下一步是确定表之间的关系。首先,判断两个给定的表之间是否有关系。如果有,算出是一对一,一对多,还是多对多。本章末尾的三个案例研究提供了进一步的例子。如果是多对多关系,需要插入一个链接表,如图 7-5 所示。
如前一节所述,有些表设计有来自其他表的惟一标识符:例如,Cards for Everyone Inc .的发票表包含一列客户 id。这些唯一标识符中的每一个都必须与目标表中的值相匹配。因此,在发票表中,所有客户 ID 必须与客户表中的客户 ID 相匹配。
Note
在表之间添加新的关系时,可以指示数据库确保一个表的每个唯一标识符与目标表的唯一标识符相匹配。这个过程称为实施参照完整性。
此外,如果表中的唯一标识符发生变化(或者整行被删除),必须采用以下策略来避免在其他表中创建孤立的唯一标识符:
- 不允许。这种改变是完全不允许的(一种可以由数据库包强加的功能)。
- 对于更新,更改将应用于所有相关表。
- 对于删除,所有相关表中具有相同唯一标识符的行将被删除,或者相关唯一标识符值将被设置为 Null。
进一步检查
一旦您表示了所有的数据,并绘制了表并将它们链接在一起,就可以应用许多规则来帮助您确保将数据划分到适当的表中。
Note
这些规则在数据库文献中通常被称为规范化。
回想一下,每个表应该代表一个主题,它的列完整地描述了这个主题。如第六章中的所述,任何冗余数据都应被分离并放入相关的表中。每个表必须包含一个唯一的标识符。
在给定表的每个行和列的交叉点上,应该只有一个值,而不是一个值列表。例如,表 7-1 显示了来自第六章的客户和发票的组合表,其中约翰·威廉姆斯的两张发票的数据组合到相同的行/列交叉点。
表 7-1。
Combined Customer and Invoices Spreadsheet with Additional Data Items for John Williams
| 客户号 | 西方人名的第一个字 | 姓 | 邮政区码 | 电子邮件 | 日期 | 金额(美元) | | --- | --- | --- | --- | --- | --- | --- | | one | elizabeth 的昵称 | 加西亚 | 米 48823 | Lgarcia@… | 11/4/14 | Seventeen | | Two | 约翰 | 威廉姆斯 | 或者 97062 | Jwilliams@ ... | (11/4/14, 12/4/14) | (2.50, 5.00) | | three | 史蒂夫(男子名) | 琼斯 | FL 33901 | Sjones@… | 11/4/14 | Fourteen |从这个表中检索数据会很困难,因为在一个列中存储了太多的数据。例如,很难创建一个报告来汇总每天花费的金额。
避免重复组,即使它们存储在几列中。例如,表 7-1 可以通过用重复列(如日期 1、日期 2、金额 1 和金额 2)替换单一日期列和单一金额列来改进,如表 7-2 所示。
表 7-2。
Combined Customer and Invoices Spreadsheet with Two Date and Two Amount Columns
| 客户号 | 西方人名的第一个字 | … | 日期 1 | 金额 1(美元) | dota2 | 金额 2(美元) | | --- | --- | --- | --- | --- | --- | --- | | one | elizabeth 的昵称 | … | 11/4/14 | Seventeen | | | | Two | 约翰 | … | 11/4/14 | Two point five | 12/14/14 | Five | | three | 史蒂夫(男子名) | … | 11/4/14 | Fourteen | | |虽然数据已经被分成多列,但仍然存在问题。任何旨在计算每天花费金额的查询都必须搜索日期列和金额列。显然,随着发票数量的增加,需要增加列数来容纳数据。如果每个客户每年的最大发票数是 50,这意味着您将使用 100 列来存储每个客户的日期和金额数据,即使对于只有一两张发票的客户也是如此。这是对空间的浪费,并且没有建立任何明确的界限。
表 7-1 和 7-2 的基本问题是列没有引用(或描述)表的唯一标识符——任何不引用的列都应该被移到另一个表中。表 7-1 和 7-2 是关于客户的,但是关于发票日期和发票金额的栏是指发票而不是客户。因此,它们应该放在另一张桌子上。表 7-3 和 7-4 分别显示了如何将表 7-2 分解为客户表和发票表。这些表使用 CustomerID 通过一对多关系连接,如图 7-4 所示。列中的所有重复数据项都已被删除,并且所有重复列都已被删除。表中的每一列都引用该表的唯一标识符。现在可以直接运行一个查询来计算在任何给定日期花费的金额。
表 7-4。
Basic Invoices Database Table
| 发票号 | 客户 ID | 日期 | 金额(美元) | | --- | --- | --- | --- | | One thousand and one | one | 11/4/14 | Seventeen | | One thousand and two | Two | 11/4/14 | Two point five | | One thousand and three | three | 11/4/14 | Fourteen | | One thousand and four | Two | 12/4/14 | Five |表 7-3。
Basic Customer Database Table
| 客户号 | 西方人名的第一个字 | 姓 | 邮政区码 | 电话 | 电子邮件 | | --- | --- | --- | --- | --- | --- | | one | elizabeth 的昵称 | 加西亚 | 米 48823 | 517-xxx-xxxx | 天主教霍特 mail.com 教区 | | Two | 约翰 | 威廉姆斯 | 或者 97062 | 503-xxx-xxxx | Jwilliams @gmail.com | | three | 史蒂夫(男子名) | 琼斯 | FL 33901 | 239-xxx-xxxx | Tiones @aol.com |此外,描述唯一标识符以外的列的任何列都必须移动到另一个表中。例如,如果有任何计算列,那么应该删除它们,因为当需要结果时,可以使用数据库软件来执行计算—数据是冗余的。例如,假设 Cards for Everyone Inc .想要创建一个报表,显示每个类别中可用的卡片数量,如生日或情人节卡片的数量。该场景在第一章中有所呈现,如图 7-6 所示。
图 7-6。
Sample report for Cards for Everyone Inc.
表 7-5 显示了一个 CountOfCategory 列,该列被添加到 Everyone Inc .的卡的产品表中。但是,没有必要将该列存储在数据库中,因为图 7-6 中的报告可以直接从产品表的类别列中生成。
表 7-5。
Basic Product Database Table with a calculated column
| 产品 id | 供货商编号 | 产品名称 | 种类 | … | CountOfCategory | | --- | --- | --- | --- | --- | --- | | Eleven | One hundred | 猫 | 生日 | … | Two | | Twenty | Two hundred | 玫瑰 | 谢谢你 | … | one | | Twenty-three | Two hundred | 船 | 生日 | … | Two | | forty-two | Three hundred | 心 | 情人 | … | one | | Sixty-one | Three hundred | 兔子 | 新生婴儿 | … | one |通常,应该可以在不影响任何其他列的情况下更改表中每一列的值。这些列应该是相互独立的。在表 7-5 中,可以看到 CountOfCategory 的值依赖于类别。例如,如果类别为生日的另一张卡片被添加到表 7-5 中,则每次出现类别=‘生日’时,CountOfCategory 的值将升至 3。
Note
发票表(表 7-4 )中的金额列是计算列。发票发出后,其金额在大多数情况下保持不变。所以,有这个栏目也未尝不可。
测试数据库:第 2 阶段
测试您的数据库是一个持续的过程,永远不应该被认为是完整的。第十二章、第十三章和第十四章介绍了表格、查询和报告的使用,并讨论了数据的分析。执行这些步骤时,您可能会发现设计中需要纠正的问题。
然而,你没有理由不现在就开始这个过程。看看能不能用数据库得到想要的答案。创建表单和报表的草稿,并查看它们是否显示了您期望的数据。寻找不必要的数据重复,如果发现重复,就修改设计以消除重复。
如果您发现忘记了一列,请尝试通过查询现有的列来计算它。如果不能从其他列计算数据,很可能需要为其创建一个新列。您需要确定是否需要创建另一个表。
把用户带回来,让他们评价你的表格和报告。如果他们的需求没有得到满足,改进设计。
数据库文档
如果您仔细地命名您的表和列,那么您的数据库代表什么就非常清楚了。此外,您的文档应该包含表、列和关系的定义。文档中还介绍了默认设置,以便清楚地了解如何使用它们。例子是有帮助的。如果长期使用表单、查询和报告,还应该记录它们的详细信息。在后面的章节中会给出更多的细节。
您的目标应该是提供足够的信息,以便当您将数据库传递给其他人时,他们可以理解其工作方式,并根据需要进行更改。
个案研究
本节介绍了第 2–4 章中案例研究的数据库设计。您应该将这些设计视为一种可能的解决方案,而不是唯一的解决方案。
尝试根据每个案例研究各自章节中描述的数据来完成每个设计。设计非常简单,尽管有些有很多桌子。如果设计变得势不可挡,拿一小部分,比如两张桌子,尽你所能去理解它们是如何联系在一起的。然后慢慢积累。
案例研究:智能手推车公司的数据库设计。
智能手推车公司的数据库的一个可能的任务陈述可以是:
"The database will be used to store customer details, to ensure that there are enough materials in stock to satisfy orders, and to provide tips for ordering new supplies. Indicators will be stored to enable enterprises to monitor their leverage and goals. "
智能手推车公司使用的数据在第二章中介绍。此外,在第五章中收集并呈现了度量形式的数据。该数据复制在表 7-6 中。
表 7-6。
Sample Data for the Levers and Metrics Used by Smart Wheelbarrows Inc.
| 工具 | 公制的 | | --- | --- | | 收入 | 每个交易日期每个产品的销售数量每个产品的交易价格涉及折扣的客户销售地址涉及信用卡的销售 | | 销售成本 | 根据每种类型、长度和材料供应商购买的数量根据每种类型、长度和材料供应商支付的每笔交易价格的日期 | | 杂项开支 | 每种办公文具的购买数量,每笔交易的日期,每种办公文具的价格,每种广告投资的成本,尽可能细分到每笔广告投资的日期 |为了便于管理,只添加了两个指标:
- 涉及折扣的销售
- 涉及信用卡的销售
许多表格反映了第二章中的电子表格,我们将依次考虑这些表格。数据库设计是三个案例研究中最复杂的,可以分为三个部分:
- 客户
- 产品的颜色和类型
- 材料
图 7-7 显示了数据库设计的概述。
图 7-7。
Overview of the complete database design for Smart Wheelbarrows Inc. Note
数据库设计通常被称为模式。
以下三个部分将分别讨论这些表格,并将展示设计的特写镜头。
客户表
客户表非常类似于您在第二章中看到的相应电子表格(表 2-3 )。在第一列中添加了一个唯一标识符,Name 列被拆分为 FirstName 和 LastName。图 7-8 显示了分配给每一列的数据类型,图 7-9 显示了填充的客户表。
图 7-9。
Populated Customers table for Smart Wheelbarrows Inc.
图 7-8。
Customers table for Smart Wheelbarrows Inc.
一个名为 CustomerInvoices 的数据库表对应于表 2-4 中所示的发票电子表格。进行了以下调整。
- 与 Cards for Everyone Inc .一样,Customers 表和 CustomerInvoices 表之间存在一对多关系,因为每个客户可以有多张发票,但每张发票只适用于一个客户。
- Customers 表中的一个惟一标识符(称为 CustomerID)被放在每张发票的旁边,这样发票就可以链接到它们相关的客户。这取代了第二章中的表 2-4 中的客户名称。
- 邮政编码列被删除,因为它与客户表中的信息重复。
- Amount 列已被删除,但将通过链接表在 CustomerInvoices 表和 Products 表之间的关系中看到。
- 添加了类型为“是/否”的名为“信用卡销售”的列。该数据对于业务目标非常重要,并与发票的支付方式直接相关。
CustomerInvoices 的列类型如图 7-10 所示,填充的表格如图 7-11 所示。
图 7-11。
Populated CustomerInvoices table for Smart Wheelbarrows Inc.
图 7-10。
CustomerInvoices table for Smart Wheelbarrows Inc.
与 Cards for Everyone Inc .一样,CustomerInvoices 表和 Products 表之间存在多对多的链接。这是通过使用一个名为 CustomerInvoices _ 2 _ Products 的链接表来实现的。填充的表格如图 7-12 所示。下一节提供了关于 ProductID 的详细信息。
图 7-12。
Populated CustomerInvoices_2_Products table for Smart Wheelbarrows Inc.
最后,在本节中,图 7-13 显示了所有这些表格之间的关系。
图 7-13。
The Customers, CustomerInvoices, and Products tables, linked together
产品的颜色和类型
有两种产品,标准独轮车和小独轮车,六个颜色。类型和颜色是分开处理的,因为不同的数据适用于每个类型和颜色。例如,每个物料清单都适用于特定类型的手推车,而油漆则有不同的代码和供应商。
将产品电子表格(第二章中的表 2-1 )转换成如图 7-14 所示的数据库表需要很多步骤。
图 7-14。
Populated Products table for Smart Wheelbarrows Inc.
首先,包含每种手推车颜色列表的列已被拆分,因为任何行和列的交叉点都不应包含一个以上的项目。每个产品都有一个单独的行,根据其类型和颜色有一个唯一的产品代码。该产品代码将作为其唯一标识符,如图 7-14 所示。
第二,独轮车的类型分为标准的 SD 和小型的 SM。这些类型使用一对多关系链接到 ProductType 表。每个产品只能有一种类型,而给定的类型可以应用于多个产品。产品类型表包含每种产品类型的描述,以及所需的油漆量(因为这取决于产品的类型)。产品类型表如图 7-15 所示。
图 7-15。
Populated ProductType table for Smart Wheelbarrows Inc.
第三,产品颜色被分配了唯一的标识符,并使用一对多关系链接到一个关于颜色的数据表,称为 ProductColor。每个产品只能有一种颜色,但是每种颜色可以应用于多种产品。在该表中,包含了关于可用颜色和相应油漆代码和供应商 ID 的数据。该表格引用了第二章中的表格 2-5 和 2-6 所示的电子表格数据,如图 7-16 所示。
图 7-16。
Populated ProductColor table for Smart Wheelbarrows Inc.
第四,Products 表的最后两列与价格相关,这取决于 ProductID。折扣价格使用“是”或“否”列,用于营销目的,以衡量折扣是否会影响销售以及来自哪些客户。
Note
油漆的价格需要包含在数据库设计中。因为油漆的价格取决于油漆的颜色,所以它最合理的位置应该在上面 7-16 的产品颜色表中。
这四个表之间的关系如图 7-17 所示。
图 7-17。
Relationships among the Products, ProductType, ProductColor, and MaterialSuppliers tables for Smart Wheelbarrows Inc.
材料表
材料表反映了你在第二章的表 2-5 中看到的材料电子表格。为每种材料添加了唯一的标识符。“供应商名称”列已被删除(因为它不依赖于“材料”表的唯一标识符),并已被“供应商 ID”所取代。图 7-18 显示了材料表的前几列。
图 7-18。
Materials table for Smart Wheelbarrows Inc.
这些原材料的供应商,反映在第二章中表 2-6 的电子表格中,出现在材料供应商表中。增加了唯一标识符,如图 7-19 所示。
图 7-19。
MaterialSuppliers table for Smart Wheelbarrows Inc.
每种类型的产品都有自己的物料清单电子表格,如第二章的中的表 2-7 和 2-8 所示。材料清单数据库表如图 7-20 所示,包括每种产品的数量要求栏。MaterialID 和 ProductTypeID 构成了 BillOfMaterials 表的唯一标识符。也就是说,它们一起而不是单独充当唯一标识符。“产品”、“产品类型”、“材料”和“材料清单”表之间存在以下关系:
图 7-20。
BillOfMaterials table for Smart Wheelbarrows Inc.
- Products 表中的 ProductTypeID 和 BillOfMaterials 表中的 ProductTypeID 之间存在一对一的关系。每个产品类型 ID 有一个物料清单,每个物料清单仅适用于一个产品类型。
- 物料清单表中的 MaterialID 和物料表中的 MaterialID 之间存在一对多关系。每份材料清单中的每种材料只出现一次,但是每种材料可以在多份材料清单中列出。
图 7-21 显示了产品类型、物料清单、物料、物料供应商表之间的关系。
图 7-21。
Relationships among ProductType, BillOfMaterials, Materials, and MaterialSuppliers tables
要查看智能手推车公司数据库设计的完整视图,请回头参考图 7-7 。这些表格涵盖了顾客、颜色、产品类型以及材料。数据库将这三个主要特征结合在一起。
案例研究:詹宁斯-哈佛律师事务所
Jennings-Havard 律师事务所数据库的使命声明是:
"The database will be used to improve customer retention and attract new customers."
这里介绍的数据库设计比 Smart 独轮车公司的数据库简单得多。它以一个客户表为中心,链接到不同的人口统计数据表——年龄、性别和种族——并包括关于接受宣传的偏好的详细信息,如公司的时事通讯。所有表之间的关系都是一对多的。
还将增加在第五章中介绍的两个指标:
- 客户是否是新客户
- 客户是如何发现这家公司的
这两个指标将被合并到一列 ClientSource 中。更多的细节将在本章后面给出。
已经创建了三个虚构的客户端来填充数据库:
- 朱琴,45 岁,女。她在 Jennings-Havard 律师事务所有两个正在进行的案件:她和丈夫的遗产规划,以及她年迈父母的长期护理规划。她是在当地华人社区中心的一次演讲中了解到这家公司的,并希望通过电子邮件接收该公司的时事通讯。朱太太是中国人。
- 保罗·伯根,67 岁,男。他是独生子,父亲最近去世了。詹宁斯-霍华德律师事务所正在处理他父亲的遗嘱。保罗从报纸广告上发现了这家公司,并打电话联系他们。他选择通过邮件接收公司的时事通讯。卑尔根先生是白人。
- 简·史密斯,53 岁,女。她在公司有一个遗产规划的案子。她通过一个朋友了解了他们,并希望收到他们的电子邮件简讯。她亲自到办公室进行了初步接触。史密斯小姐是白人。
图 7-22 显示了 Jennings-Havard 律师事务所数据库设计的概述。本章后面将更详细地介绍这些表格。
图 7-22。
Overview of the database design for Jennings-Havard Law Offices
客户表位于设计的中心,因为客户构成了数据库任务的中心。有标题、名字和姓氏列,还有联系人数据列。人口统计数据有三列:年龄、性别和种族。这些列中的每一列都有一个唯一的标识符,它链接到一个单独的表。图 7-23 显示了填充的客户端表的前几列。
图 7-23。
Clients table for Jennings-Havard Law Offices
年龄、性别和种族的表格分别如图 7-24 、 7-25 和 7-26 所示。
图 7-26。
Ethnicity table for Jennings-Havard Law Offices
图 7-25。
Gender table for Jennings-Havard Law Offices
图 7-24。
AgeRange table for Jennings-Havard Law Offices Note
图 7-24 到 7-26 所示的三个人口统计表中的值可以直接合并到 Clients 表中。然而,使用单独的表格可以保持数据输入的准确性,避免输入有拼写错误的数据,如第十章所述。
一个名为 ClientPublicityPrefs 的表用于存储客户对有关接收简讯的问题的回答。可以选择是完全接收,还是通过电子邮件或邮件接收。图 7-27 显示了 ClientPublicityPrefs 表。
图 7-27。
ClientPublicityPrefs table for Jennings-Havard Law Offices
Clients 表连接的最后一个表是 ClientContacts 表。它的前几列如图 7-28 所示,稍后将提供更多细节。
图 7-28。
ClientContacts table for Jennings-Havard Law Offices
这个客户联系表按案件编号列出了公司正在处理的每个案件。有些客户,比如朱进,会有不止一个案例。如图 7-28 中的客户联系表所示,提供了初次联系的日期,以及联系方式(电话、电子邮件等。).
图 7-29 提供了 Clients 表及其链接表之间关系的概要。
图 7-29。
The Clients table and its linked tables
InitialContactMethod 表如图 7-30 所示。
图 7-30。
InitialContactMethod table for Jennings-Havard Law Offices
联系人类别反映了公司开展的四种工作类型,如图 7-31 所示。
图 7-31。
ContactCategory table for Jennings-Havard Law Offices
客户身份指的是客户的地位——他们是为自己打电话,还是代表家庭成员,还是代表服务用户的专业人士,等等。图 7-32 显示了客户端状态的值。
图 7-32。
ClientStatus table for Jennings-Havard Law Offices
ClientSource 指的是关于公司的信息来源。许多客户以前用过这家公司。然而,新客户会通过广告、社交媒体和朋友的推荐来了解这家公司。图 7-33 列出了詹宁斯-哈佛律师事务所考虑的可能性。
图 7-33。
ClientSource table for Jennings-Havard Law Offices
ClientContact 及其链接表之间的关系如图 7-34 所示。
图 7-34。
ClientContacts and its linked tables
Jennings-Havard 律师事务所数据库的表格和关系如图 7-22 所示。该公司有许多客户,每个客户都有不止一个案例。数据库设计能够捕获人口统计数据和病例关系数据。
案例研究:连接南区
Connecting South Side 数据库的使命陈述如下:
"The database will be used to track the contact with consultants to prove that Connecting South Side meets the goal of its funding and provide data for compiling future funding."
Jennings-Havard 法律事务所数据库的主要构件也可以在这里使用。这是因为这两个数据库都关注与他们组织联系的人。然而,用于连接 South Side 的数据库更复杂,因为收集了关于每个查询者的大量数据。
图 7-35 显示了数据库设计的概述。如前一节所述,有一个问询表(客户)和一个案例表(客户联系人)。两个案例研究中的年龄、性别和种族表是相同的。还有,宣传也是一样的。
图 7-35。
Database design for Connecting South Side
一个新的表,Neighborhood,用于收集询问者来自芝加哥哪个社区的数据。南边有 200 多个社区,需要的时候会添加到表中。图 7-36 显示了邻居表。
图 7-36。
Neighborhood table for Connecting South Side
在最后一节中,Cases 表向 ClientContacts 表添加了几个额外的列。图 7-37 显示了案例、组织和组织类型之间的联系。
图 7-37。
The Cases and Organizations tables
每个案件都与询问者提到的组织有关。这是一种多对多的关系,因为每个查询者可以被推荐给多个组织,每个组织可以申请多个查询者。图 7-38 显示了案例与组织的关联表,图 7-39 显示了组织表的前四列。
图 7-39。
Organizations table for Connecting South Side
图 7-38。
Cases_2_Organization table for Connecting South Side
每个组织都被分配了一个类型,如帮助热线或支持小组,以使报告更容易。图 7-40 为组织类型表。
图 7-40。
OrganizationType table for Connecting South Side
图 7-41 是案例表及其剩余链接表的特写。
图 7-41。
The Cases table and its remaining linked tables
添加了一个名为 CSS_Employee 的新列。负责该案例的连接南区员工的姓名首字母存储在此处,以便任何查询都可以发送给此人。此外,正如在第十章中所讨论的,当你在监控数据质量时,知道谁输入了数据会有所帮助,这样就可以向适当的人发出任何必要的进一步指示。
案例中的许多列反映了上一节中的内容。有几个是不同的。
CaseCategory 列反映了连接 South Side 的案例类型。这些可以包含许多组件,因此也包含许多类别。因此,本专栏旨在获取最初接触 Connecting South Side 时最突出的类别的数据。图 7-42 显示了相应的 CaseCategory 表。
图 7-42。
CaseCategory table for Connecting South Side
Cases 表使用一对一关系链接到 HealthCondition 表。健康状况表涵盖了询问者的任何残疾或其他健康状况。随着时间的推移,同一询问者的健康状况可能会因病例而异,因此取决于病例而非询问者本人。除了唯一标识符之外,每一列都是“是/否”类型。一个查询者可以有多种残疾。图 7-43 显示了填充的健康状况表。请注意,《??》第四章中的多萝西·贝恩有身体残疾和精神健康问题。
图 7-43。
HealthCondition table for Connecting South Side
NumberOfContacts 列是一个指标,表示每个查询涉及的工作量。与 HealthCondition 表一样,它使用一对一关系链接到 Cases 表。另一种设计是将其列合并到 Cases 表中,这里使用两个表来减少 Cases 表中的列数。当联系人可能是一个电话、一封电子邮件或一次对办公室的访问时,将计算传入和传出联系人的数量。还记录了单独网络搜索的次数。图 7-44 显示了已填充的联系数量表。请注意,多萝西·贝恩的调查涉及许多联系人。
图 7-44。
NumberOfContacts table for Connecting South Side
Cases 表的 Open 列的数据类型是 Yes/No,它标识一个案例是正在进行还是已经结束。
最后一列,NotesAboutContact,反映了为第四章中描述的每个案例保留的文档。案件档案的注释放在这里。
上图 7-35 显示了连接南侧数据库设计的概述。与 Jennings-Havard 法律事务所的设计一样,该数据库能够捕获大量客户/咨询者的数据,并且是围绕一个咨询者可能有多个案件这一事实构建的。通过“连接南区”,案例和它们所涉及的组织之间的额外关系被包含在设计中。
摘要
本章讲述了创建简单稳定的数据库设计所需遵循的步骤。这个过程从考虑您当前(或将要)处理的数据开始,将它分成表,并确定这些表之间的适当关系。您可以对表进行进一步的检查,以确保尽可能高效地检索和分析数据。彻底测试数据库并提供全面的文档是必不可少的。
八、数据保护、安全和隐私政策
大多数企业持有一些个人数据,例如,客户或员工的个人信息。如果这些数据与某个可以被识别的人有关,你很可能要承担重要的法律责任。如果数据遭到破坏,财务后果和对您声誉的影响可能非常严重;处罚的确切性质取决于适用于您企业的司法管辖区。与任何法律一样,了解它如何影响您的业务、如何遵守以及如何将任何要求纳入您的业务政策非常重要。此外,数据泄露可能会导致其他费用,如客户赔偿和数据恢复成本。
保护数据所花费的时间通常比发生问题后恢复损失所花费的时间要少得多。新的威胁总是存在,企业必须保持警惕。数据保护和安全是通过员工教育、高效的业务流程和清晰的业务政策的结合来实现的。战略必须是全面的,并整合到业务的各个方面。小型企业比大型企业更容易受到攻击,因为它们无力承担最有效的数据安全措施。
如果发生违规,企业需要确保能够尽快处理,避免严重后果。违约后很难重新获得客户的信任。
数据保护立法
长期以来,个人数据一直面临电子和物理盗窃的风险,但近年来移动设备和云的使用意味着犯罪分子或简单的人为错误有更多的机会导致违规。适用的数据保护立法越来越多。美国有大约 20 部国家隐私或数据安全法,以及各州之间的数百部此类法律。例如,加利福尼亚州有超过 25 个州的隐私和数据安全法。这些法律针对特定的问题或行业,在此提供完整的总结是不实际的。目的是提供一些指导。
一些美国企业已同意遵循 1998 年英国数据保护法案中与数据处理相关的前七项原则。如果你遵循这些原则,不管适用于你的企业的管辖权,你很可能会在良好的法律地位。以下各节中概述的这七条原则是您考虑数据保护问题的有用起点,即使它们可能不是您所在国家的法律。它们对于整合存储、处理和保留数据的业务策略特别有用。
《英国数据保护法》适用于纸质记录以及以电子形式保存的记录,并赋予个人某些权利。它还规定记录和使用个人数据的企业有义务公开这些数据是如何被使用的。术语“个人”是指顾客、客户、询盘者或任何最适合您的小企业的术语。
应该公平合法地处理数据
您必须向个人提供您的企业名称以及他们的个人数据将被用于的目的。就个人如何访问和更正您掌握的个人数据给出明确的说明。您应该只从合法授权提供个人数据的人那里获取这些数据;在大多数情况下,这将是个人自己,除非他们是未成年人。
您必须向个人解释他们的个人数据是否会以任何不明显的方式使用。对于他们的个人数据被保存或使用的目的,你不能欺骗。例如,你必须告诉个人,他们的个人信息是否会被传递给征信机构。
简而言之,持有个人数据的企业应定义(可能在公开的隐私政策中)以下内容:
- 将保存哪些数据
- 持有该等资料的目的
- 是否会向任何第三方披露任何数据,如果会,是哪些第三方
- 加工的任何不明显的结果
- 个人可以撤回同意企业持有或使用的任何个人数据
- 个人如何检查或修改企业持有的数据或请求删除该数据
必须为特定的合法目的处理数据
你必须有一个具体的、合法的理由来收集数据;你不能简单地投机性地收集它。此外,您不能将收集的数据用于其他不相关或非法的目的。例如,未经个人事先同意,小型企业为衡量客户满意度而收集的数据不应用于直接营销。
数据必须足够、相关,并且不要过多
持有的个人数据的级别应仅限于这些详细信息的相关程度,以及实现所述目的所需的程度。因为个人数据在以后可能有用而持有这些数据是不可接受的。
只有在绝对必要的情况下,才能保存敏感的个人数据。例如,如果你不需要知道一个人的种族,收集这样的数据将是过度的。然而,如果种族是项目的关键,收集它被认为是相关的。在"连接南方"的案例研究中,授予该组织的赠款特别指出,该服务的目标之一是向不同族裔的人提供服务。为了证明该组织实现了赠款的这一特定目标,必须收集关于其询问者的种族的数据。
总的来说,记录下需要任何个人数据的原因对您的企业是非常有用的。
数据必须准确和最新
您持有的任何数据必须真实准确,并在必要时进行更新。根据您的业务性质,您可能需要开发允许个人快速更新其详细信息的程序。
通过确保您定期检查客户详细信息并在您意识到变化时立即更新您的记录,可以使您的数据库保持最新。细节可能随时改变。个人也可以随时要求更改他们的详细信息。
保持数据准确(或清理)在第十章的中介绍,保持数据最新(或维护)在第十一章的中介绍。
数据不得保留超过必要的时间
如果您收集数据的目的具有时间敏感性,您必须确保不再需要该数据时不再保留该数据。如果适用,您应该告诉个人数据将保留多长时间。
很有可能您的数据库包含您不再需要的数据,对您的数据进行年度审计会很有用。但是,如果税务和其他机构要求您保留此类数据,那么将其保存在档案中是有意义的。
您应该创建一个数据保留策略,规定哪些数据需要存档、存档多长时间以及存档的原因。
必须根据个人权利处理数据
该法案规定了个人的权利以及数据持有者的责任。重要的是要确保你理解这些权利,并按照这些权利行事。
Individuals have the right to access copies of personal data held about them, either on computer or in a structured manual filing system. Individuals have the right to ask in writing that the business not process data where it is likely to cause them damage or distress. Individuals have the right to ask the business in writing to cease processing their personal data for direct marketing purposes. Individuals have the right to object to a business in writing to decisions affecting them where they are made by automated processes and can request that decisions are made with human involvement. Individuals have the right to compensation through the courts for any damage and distress suffered as a result of any breaches of the Data Protection Act committed by a business. Individuals have the right to rectification of data that’s inaccurate or contains expressions of opinion based on inaccurate information.
数据必须安全
您的企业必须采取所有适当的措施来保护个人数据的安全,无论其格式如何(纸质或电子)。确保程序到位,以防止非法和/或未经授权的处理,并保证数据受到保护,防止意外丢失和破坏或损坏。这项义务涵盖远程工作的员工。您可能需要开发技术和组织过程来处理这一义务。以下部分提供了有关保护数据安全的指导。
自学
避免在网上工作时点击未知链接和弹出窗口,或者在无法核实来源时打开任何电子邮件附件。保存机密数据的设备不用于搜索互联网或浏览社交媒体网站可能是明智的。锁定您的手机和平板设备。
破解密码的软件在网上很容易买到,因此仔细创建密码至关重要。
- 使用包含八个或更多字符以及字母、数字和符号组合的强密码
- 在不同的网站上使用不同的密码
- 定期更改密码
- 不要与任何人共享密码或写下密码
未受管理的管理员权限可能会造成安全威胁,因此请确保为非管理员员工创建适当的访问限制,尤其是当这些员工使用自己的设备时。
如果有人能接触到你的电脑,所有这些预防措施都毫无意义。如果有人可以访问你的电脑,甚至连登录密码都可以被轻易绕过。常见的情况是笔记本电脑或 USB 驱动器在旅途中丢失或被盗。在云中存储机密数据有助于解决这些问题,这将在第十八章中讨论。
大多数公共 Wi-Fi 区域,如酒店提供的互联网和网吧,不会加密数据。这意味着您的未加密数据可能会被中断。你必须要么使用加密软件,要么只对你乐意公开的数据使用公共 Wi-Fi。
尽量减少纸质文件,并锁在文件柜中。这些应该被扫描,所以总是有一个数字备份。如果纸没必要留着,最好切碎。
教育你的员工
如果您网络上的一台计算机遭到破坏,您的整个企业都将面临风险。员工必须接受有关互联网安全、安全性和最新威胁的教育,以及如果他们放错数据或怀疑恶意软件(恶意软件)感染了他们的机器时该怎么办。
确保对所有员工进行如何管理敏感数据的培训。机密信息通常是由未接受过适当培训的员工无意中泄露的。您可以通过特定的教学课程和印刷材料,或者使用员工手册来进行培训。培训应包括以下所有内容
- 如何构造强密码
- 通过电话或电子邮件安全提供的数据类型
- 使用公司电脑、智能手机和其他设备的限制
- 小心打开附件或点击垃圾邮件中嵌入的链接
- 相关商业政策
第二十章给出了员工培训的进一步指导。
安全策略
一个既能保证数据安全又能让员工尽可能自由工作的系统是确保遵守安全政策的关键。在员工开始使用他们自己的设备之前,所有的安全策略都应该在您的整个企业内达成一致并清楚地写入和共享。
正式的商用计算机政策应概述员工可接受和禁止的在线活动。例如,该政策可以向员工明确表示,商业设备不应用于个人电子邮件或社交媒体。可以就办公室内外笔记本电脑和其他设备的使用提供指导。
应对数据进行备份,并在适当时进行存档。第十一章和第十七章详细介绍了数据备份和数据存档。对于当前正在使用的数据,制定数据恢复计划和灾后计划是非常有用的。如果你不幸不得不使用这些计划中的任何一个,你将会处于压力之下,并且很可能无法使用公司的资源。提供清晰、详细的说明,包括所有的电话号码和网站,以执行您的计划。在多个现场和非现场地点保留一份计划副本。
数据保护应该是您办公室的首要任务。每个季度,留出时间审查您的安全策略并做出调整。例如,您可能添加了需要保护的新技术。
使用软件保护您的数据
确保您使用的是高效的防病毒软件,并保持更新。此外,如果可能,请确保您使用的是最新版本的操作系统,并且所有更新都已就绪。如果可能,使用最新的技术加密您的数据。第十一章详细介绍了这些问题。
原则八
英国《1998 年数据保护法》的原则八与美国无关,因为它规定任何国家都不应将数据转移到欧洲经济区以外的国家。然而,这是一个有用的警告,因为在跨境开展业务时,你必须保持警惕。许多国家没有处理数据泄露的立法,如果您的数据在海外遭到破坏,您可能没有任何追索权。
摘要
在工作过程中持有个人相关数据的小型企业必须考虑:
- 他们持有的数据是否受《数据保护法》概述和本章描述的要点的约束
- 他们所做的安排是否满足该法案对他们所持数据安全性的要求
- 采取什么程序来迅速回应个人的个人资料要求
即使这些特定的数据保护法不适用于您居住的地方,遵守这些要点也是谨慎和良好的做法。为便于参考,表 8-1 中概述了这些原理。
表 8-1。
First Seven Principles of the 1998 Data Protection Act
| 原则 | 标题 | | --- | --- | | one | 应该公平合法地处理数据 | | Two | 数据应出于特定的合法目的进行处理 | | three | 数据应该是充分的、相关的,而不是过多的 | | four | 数据应该是准确的和最新的 | | five | 数据不应保存超过必要的时间 | | six | 应根据个人权利处理数据 | | seven | 数据应该是安全的 |九、收集您的数据
明确的目标对于有效的数据收集至关重要。任何技术对你的小企业所能做的最好的事情就是帮助它廉价而快速地实现目标。第五章讲述了设定业务目标、杠杆和指标。第七章讲述了数据库设计,将业务目标牢记在心。本章介绍了数据收集,并解释了一些收集数据的方法。
概观
十有八九,你已经在收集数据了。例如,如果你接受顾客的钱,你可能会给他们开发票并做记录。这些数据可以直接放入你的数据库。然而,以这种方式收集数据并不能帮助你理解为什么人们会有这样的行为。因此,需要进一步的数据收集技术来帮助回答特定的问题,并帮助您的企业朝着其特定的目标前进。如果你想改善和发展你的业务,你可能想超越你收集的数据的界限。可能有益的数据包括:
- 您客户的人口统计数据
- 客户对你提供的产品/服务的反馈
- 您的客户对特定变化的态度
小型企业收集描述其当前客户的数据至关重要。关于性别、年龄和种族的人口统计数据很重要,尽管还必须考虑数据保护和隐私:第八章规定了关于数据保护的指导原则。数据收集可以简单到询问人们向朋友和同事推荐你的公司的可能性有多大,也可以包括关于客户体验各方面满意度的详细问卷。
您应该以足够频繁的时间间隔收集数据,以实现您的最终目标。例如,库存数据可能必须连续收集,而关于新产品发布的反馈可以在需要时收集。
小型企业应该和大型企业一样重视数据收集的准确性,如果不是更多的话。例如,一个大企业可能一个月丢几张发票,但对小企业的影响可能要大得多。充分的培训和监督对于确保准确收集和输入您的数据至关重要。员工培训包含在第二十章中。
数据收集应该是一致的,这样你就可以跟踪一段时间的趋势。例如,当收集关于客户发票的数据时,确保每次都以完全相同的方式进行。数据应安全存储(参见第八章)并且数据收集程序应尽可能简单。
数据收集方法
收集数据的方法有很多种,如下面几节所述,您将了解每种方法的优缺点。对第 2–4 章中介绍的三个案例研究最有用的方法也进行了说明。
这里考虑的所有方法都需要参与者积极参与。然而,在许多采用这种收集方法的情况下,参与率可能非常低。幸运的是,被动收集数据也是可能的。例子包括当人们浏览你的公司网页时,收集他们的网络浏览习惯的数据。谷歌分析(Google Analytics)等工具可以帮助你做到这一点,因为它使你能够确定,例如,你的网站上最受欢迎的页面,你的访问者用来访问你的网站的关键字类型,以及你的访问者来自哪些国家。
此外,有可能获得不特定于您的业务的数据,但如果将其趋势与您收集的数据进行比较,可能会有用。一个例子是来自美国人口普查局的数据,可从census.gov
获得,它涵盖了美国各地理区域的各种人口统计特征。从这些数据中提供的信息是有用的,因为它可以告知您当地的人口趋势,并帮助您将您从您的业务中收集和分析的数据放在正确的位置。
在线调查工具
在线调查工具是从客户那里获取数据的一种非常直接的方式。在线调查(或称电子调查)已经成为进行客户满意度调查以及产品和服务反馈评估的首选方式。
Note
调查收集工具的例子有 AskNicely、Survey Monkey、SurveyGizmo、Qualtrics、Woofu 和 Google Forms。
选择在线调查而不是其他数据收集方法有许多原因,包括节省成本、节省时间,以及通过自动回复收集提高数据准确性。
给自己最好的机会来吸引对您的调查的回应是很重要的。对任何调查的回复率影响最大的因素是受访者对该主题的兴趣。例如,对现有客户的调查可能比对非客户的调查有更高的回应率,因为受访者是从与您的业务有关系的一群人中抽取的。
尽管如此,还有其他因素可以提高答复率,如下所示:
- 目标受众必须经常使用电脑和互联网。
- 调查的标题应该简短且切题。
- 应该清楚如何开始调查以及如何完成调查。
- 问题应该具体且易于理解,例如,“您对我们的客户服务的满意度如何,从 1 到 5 分?”。
- 为了简单起见,调查应该使用一个目标。
- 文本应该保持最少:一页包含三到四个问题就足够了。当顾客想要买东西时,他们不会喜欢填写详细的问卷。
你可以使用各种类型的问题,比如多项选择、复选框、是/否等等。开放式问题很难管理。开放式问题的一个例子是,“描述一下我们的服务有多有用”。足够宽泛以捕捉真实反应的特定选择提供了更易于使用的数据。尽管如此,添加一个可选的文本框还是很有帮助的,这样参与者可以根据自己的意愿扩展他们的回答。参与者应该能够在 10 分钟内完成整个问卷。
以下标准将有助于提高您的回复率:
- 解释将如何使用数据,并解决相关的数据保护问题(第八章详细介绍了数据保护)
- 给你的客户一些好处,作为他们提供数据的回报,比如参加抽奖
- 避免询问“识别”数据,如姓名、地址或出生日期—地理区域等数据可以在州级别获取,年龄范围(如 20-29 岁、30-39 岁等)可用于封装年龄
- 自愿提供联系信息,如电子邮件地址
在线调查很容易分发。您可以使用电子邮件向目标受众发送链接,请他们完成调查。但是,请确保您的电子邮件地址是准确的,并且您的列表是最新的。您可以将调查的链接放在您的企业网站或博客上。你也可以使用社交媒体,如脸书、Twitter 或 LinkedIn 来推广你的调查,并寻求反馈。最后,如果合适,您可以通过书面信函提供调查的详细信息。
好的调查问题很难写,而且可能需要相当长的时间来开发。因此,彻底测试问卷很重要,也许可以利用你的员工。
请注意,调查需要回答者填写问卷,并且通常需要一定的文化水平。如果多种语言在您的业务中很常见,请确保使用您的目标群体的所有主要语言来准备调查问卷。许多在线调查平台迎合多种语言。
与其他数据收集方法相比,在线调查有许多优势:
- 与邮政调查相比,它们的管理费用更低,覆盖的地理区域也更广
- 与电话采访或面对面采访等方法相比,评估者产生偏见的可能性更小,因为相同的问题是直接问所有受访者的,没有采访者参与
- 有些人觉得回答调查比参加面试更舒服
- 将封闭式回答列表是一个简单明了的过程
但是,在选择在线调查之前,您应该考虑几个问题:
- 除了语言障碍(可以在一定程度上缓解),问题对所有受访者的意义可能不尽相同。这可能导致不能正确反映意见的不准确结果。在面试中,这些类型的误解更容易被发现和纠正。
- 由于缺乏与受访者的联系,你永远不知道谁真正完成了调查。
- 你没有资格探究更多的细节。
邮政调查
您可以通过邮件分发或发送打印好的问卷,然后收集问卷或用贴有邮票的信封寄回问卷。
为了便于以结构化格式填写表单和数据条目,表单应该是机器可读的,或者至少具有清晰可识别的数据字段和预编码的响应。除了这些方面之外,您还可以像设计在线调查一样设计打印问卷。
自填式调查依赖于包含被调查者正确姓名和邮政地址的适当数据库。如果您的列表过时、包含拼写错误、重复或由不合适的参与者组成,回复率将会很低。
面对面面试:使用纸质表格
面对面的面试可以是结构化的,也可以是开放式的。结构化面试是通过使用类似于在线调查的调查表格来进行的,尽管仍有余地使其更长。开放式面试包括在面试过程中做笔记,这些笔记稍后会被整理。移动设备是在面对面访谈中收集数据的一种有用方式,我们将在本节稍后讨论。
面对面面试有以下优势:
- 它们使您能够提出比在线调查更复杂的问题
- 您可以在收集数据时验证数据,从而提高数据质量
- 你可以对一个回答的有效性有更深的理解
- 可以与受访者互动;例如,你可以给他们看样品
- 更容易在更长的时间内保持受访者的兴趣
- 受访者不太可能拒绝回答问题
- 您可以更容易地解决任何关于保密性的问题,因为查询可以直接处理
- 面对面的采访对于收集引语和故事特别有用
面对面面试也有很多缺点:
- 组织这些活动的费用可能会很高,尤其是如果活动发生在广阔的地理区域
- 采访者经常独自工作,工作的质量很大程度上取决于他或她的责任心
- 由于受访者之间的旅行时间,这些调查通常很耗时
- 他们容易受到面试偏见的影响
- 他们可能会对被调查者造成干扰
与准备网上调查一样,在面试开始前彻底测试为面试设计的表格是很重要的。
电话采访
电话采访可以平衡(在线和邮寄)调查和面对面采访的优缺点。与在线和邮寄调查不同,电话采访使采访者能够直接与他们的受访者互动,从而导致更深入和可能更准确的采访。然而,时间和费用通常要高得多。
当电话面试与面对面的面试相比时,他们可能会节省时间和金钱。电话面试通常比在线或邮寄调查持续时间更长;20 分钟是一个合理的长度。另外,也没有时间和金钱花在旅行上。面对面的采访确实具有有效利用视觉效果的优势,尽管随着 Skype 等在线技术的普及,这不再是一个问题。在电话面试中缺乏个人接触也会妨碍评估者对回答背后隐藏的东西的判断。同样,像 Skype 这样的技术可以帮助减轻这种情况。
采访者使用移动技术收集数据
结合(在线和邮寄)调查和面对面访谈优势的另一种方法是使用移动技术通过电话或面对面访谈收集数据。你可以使用智能手机和平板电脑来收集数据。移动技术具有以下优势:
- 您可以节省收集和交付数据的时间,因为数据直接输入到您的移动设备中:数据不必从纸质问卷转录到电子存储中。
- 数据质量更好。将数据直接输入到移动技术中,避免了对糟糕笔迹的破译。
- 也有可能在输入数据时识别出任何错误,从而在这些问题变得普遍之前,通过与采访者的沟通来纠正这些问题。
- 鉴于智能手机和平板电脑的广泛使用,面试官可能只需要很少的技术培训。
- 根据所使用的技术,可以将文本与其他格式的数据(如照片)结合起来。
使用移动技术时也有潜在的问题:
- 您的公司可能需要购买平板电脑和智能手机,并支付相关使用合同的费用。
- 存储在设备上并在设备之间传输的数据可能易受攻击。在设备级别和传输过程中使用加密会有所帮助;这些问题在第十一章中有更详细的介绍。
- 移动设备上的数据收集会随着技术的变化而变化,所以你必须仔细地做好长期规划。
作为数据收集工作一部分的案例研究
案例研究全面展示了人们对某项服务的体验。它们代表数据的深度而不是广度,因此,它们最好与本章中描述的其他方法一起使用。为案例研究收集数据、组织数据和分析数据通常非常耗时。这些数据通常是通过采访收集的,最好是面对面的采访。但是,组织可能有足够的数据来汇总案例研究,而无需进行广泛的数据收集。如果是这种情况,你必须确保那些参与的匿名。
团体活动/焦点小组
以前的每一种方法都与个人层面的数据有关。但是,在组级别收集数据也很有用。团队中的人有时会互相交流想法,产生比单独接触更多的反馈。
数据不一定代表其他组,随机样本可能是一个解决方案。在某些情况下,焦点小组可能是合适的,特别是当它由生活方式与计划的产品发布相关的人组成时。
组织这样的活动需要时间和资源,人们需要强烈的动机来参加。群体事件容易产生采访者偏见。此外,如果面试官不能有效控制团队,少数参与者可能会主导讨论。
案例研究:智能手推车公司的数据收集。
Smart 独轮车公司的许多数据是作为日常业务的一部分收集的。新客户下订单时会添加客户详细信息,必要时会更新现有客户的详细信息。类似地,关于发票、产品、供应商和材料的数据作为业务操作的一部分被存储。
第五章探讨了 Smart 独轮车公司的目标、杠杆和指标。回想一下,目标之一是增加利润。这一章考虑了提高利润的各种手段。在这些杠杆中,有两个非常适合本章描述的数据收集方法——扩大客户群和接受信用卡。
扩大客户群
第一个想法是,客户基础可以扩展到儿童。明智的做法是进行一些市场调查,看看是否有人对儿童用的小手推车感兴趣。该公司可以设计一个带有几个问题的在线调查,旨在收集关于潜在兴趣的有用数据。例如,他们可以把调查放在他们的网站上。问卷示例如图 9-1 所示。
图 9-1。
Online survey form for Smart Wheelbarrows Inc.
调查结束时会询问受访者是否愿意参加价值 100 美元的花园中心代金券抽奖。如果是这样,他们需要留下他们的电子邮件地址。否则,他们可以提交调查问卷,而不留下任何联系方式。
接受信用卡
智能手推车公司增加利润的另一个潜在方法是引入信用卡的使用。他们可以进行市场调查,以确定客户会发现这项服务有多有用。他们希望能够证明使用信用卡所产生的费用是合理的,并在设计调查问卷时考虑到这一点。
案例研究:詹宁斯-哈佛律师事务所
Jennings-Havard 律师事务所的目标是提高客户保持率。他们发现的一个杠杆是本章所描述的数据收集方法的理想工具——确定客户是否对他们接受的服务满意。其他两个杠杆,最大化客户交互和随着时间的推移跟上客户需求,由企业已经收集的数据来满足。
确定客户对他们接受的服务是否满意
像 Jennings-Havard 律师事务所这样的公司可能有一些使用互联网的客户,也有一些不使用互联网的客户。因此,网上调查和书面调查相结合是合适的。调查应该很短,但提供足够的数据,给公司明确的方向,哪里需要改进。示例如图 9-2 所示。
图 9-2。
Online survey form for Jennings-Havard Law Offices
可以在所有电子邮件通信中包含调查的链接,并且可以在所有发出的邮件中添加纸质副本。前台也有打印好的表格。
案例研究:连接南区
Connecting South Side 有可能使用许多数据收集方法来实现其目标。
该组织将电话评估作为其日常工作的一部分,因此直接询问询问者是否会参加正式的电话面试。访谈的目的可能是收集有关连接南区的反馈,目的是向授权人展示该服务广受欢迎。在线和纸质问卷也可以用来收集对服务的意见。
“连接南方”可以使用数据库中存储的查询描述来生成匿名案例研究,这将展示工作的性质和深度。他们需要小心数据隐私,并确保在这些案例研究中没有识别因素,例如生活在不寻常环境中的人。一个例子是有人在很小的时候就有了异常多的孩子。
连接南区参与各种当地活动。通常这包括派一两个员工去推销服务。这些员工可以收集当地服务中有问题的差距的数据。他们可以通过纸质表格或移动设备收集这些数据,并反馈给拨款委员会。
摘要
表 9-1 总结了本章介绍的数据收集方法。本章探讨了每种方法的优点和缺点,因此您可以明智地选择最适合您业务的方法。为了提供真实的例子,本章还探讨了在第 2–4 章中介绍的三个案例研究可以使用的数据收集方法。
表 9-1。
Summary of Data Collection Tools
| 数据收集方法 | 何时使用 | | --- | --- | | 在线调查工具 | 当成本很重要时,当时间很重要时,当客户群可以在线访问并掌握技术时 | | 邮政调查 | 适合那些对使用在线调查没有信心或没有互联网接入的人 | | 面对面面试:使用纸质表格 | 当需要与受访者进行非结构化互动和/或视觉演示会有所帮助时,此功能非常有用 | | 电话采访 | 介于(在线和邮寄)调查和面对面采访之间:它们比面对面采访更快更便宜,也比调查更深入 | | 采访者使用移动技术收集数据 | 当钱不是问题,但时间和数据质量很重要时,这很有用 |数据收集与数据清理密切相关,数据清理在第十章中有所描述。糟糕的数据收集会导致数据错误百出。可能需要改进数据收集来缓解这种情况。
进一步阅读
互联网、电话、邮件和混合模式调查:量身定制的设计方法。约翰·威利父子公司;4 th 版精装,2014,ISBN-13: 978-1118456149。
十、清理您的数据
每组数据都包含一些错误。检测和消除这些疏忽,即所谓的数据清理,通常是一个漫长的过程。然而,为了能够从数据分析中得出准确的结论,高效的数据清理是必不可少的。此外,《数据保护法》的原则之一(在第八章中描述)是确保您的数据是准确的,并且在必要时是最新的。
概观
数据清理包括三个主要步骤:
Detecting the errors Selecting and applying the most appropriate methods to correct the errors If possible, preventing the errors from happening again
数据清理的过程通常是开放式的,因为有些错误很难发现和消除。此外,数据库很少是静态的,而是定期更新和追加。因此,不干净数据的可能性始终存在。
根据数据的预期应用,您必须决定要在数据清理上花费多少精力。您的准确性标准可能会根据数据的预期用途而有所不同。
大型组织通常将数据清理步骤外包出去。然而,小型企业通常在内部进行数据清理,并需要获得适当的技能。以下部分描述了可能出现的错误类型,并给出了有关如何查找、补救和预防这些错误的建议。
为什么干净的数据很重要
你的数据越干净,你的分析和行动就越有用和准确。不干净的数据可能代价相当高。例如,这些成本可能表现为未能满足法规遵从性或未能及时解决客户问题。
数据分析可用于确定企业的进一步投资。例如,如果一家企业的销售额在过去几年中有所增长,那么现有的商店可能不足以应付预期的销售额。因此,将需要更多的商店和员工。显然,如果这种投资是基于不干净和错误的数据分析,金钱和时间可能会被浪费。制定此类决策时,干净的数据至关重要。
当不准确的数据被用来支持广告时,会导致不必要的成本和可能的声誉损失。例如,客户地址、购买习惯和偏好的列表应该是正确的,没有重复的,如果它是通过直接邮寄来为新产品做广告的话。任何不正确的地址都可能导致信件因无法投递而被退回,从而浪费金钱;邮件列表中的重复客户将会收到不止一封信,再次导致企业不必要的开支以及客户的失望。关于消费者购买习惯和偏好的不准确数据可能导致不良的客户描述和不符合人们兴趣的产品广告。
正如第章第 2–第 4 中的案例研究所示,业务数据不仅仅包含客户数据。例如,智能手推车公司有一个标准化零件代码的材料数据库表。这些数据必须准确,以便订购正确的零件并联系到供应商。如果不是这样,那么订购错误的材料会浪费金钱和时间。
不干净数据的原因
了解不干净数据的原因有助于改进数据收集程序(在第九章中讨论)和改进数据清理技术。例如,如果你断定一个错误的数据输入是由打字错误引起的,键盘的布局可能会引导你找到正确的输入。
以下部分确定了不干净数据的许多原因。
数据输入中的打字错误
数据输入通常是手工完成的。数据可以是电话交谈的结果,也可以来自书面或印刷来源。在这些情况下,由于拼写错误或对数据源的误解,在将数据键入数据库时可能会出现错误。有时,数据值可能被输入到错误的列中,这使得错误难以检测。
其他问题包括在列中单词的开头添加额外的空格,这在数据处理过程中会引起问题,例如在对数据进行排序时。例如,如果猫、玫瑰、船、汽车和城堡是 Cards for Everyone Inc .的产品名称,并且它们是按字母顺序排序的,我们会认为顺序是船、汽车、城堡、猫和玫瑰。然而,如果一个空间被不经意地放在了猫的前面,顺序就会变成猫、船、车、城堡和玫瑰。在一个简短的列表中,这不是一个大问题。然而,在具有数百个条目的列表中,由于这些条目被有效地隐藏起来,所以出现在意想不到的地方的数据项妨碍了列表的排序。
文本中的非打印字符
非打印字符是不希望在文本中看到的指令,而是用于在后台格式化文本。来自 HTML(用于编写网页)的一个例子是\n
,意思是“移动到新的一行”。当文本从一个地方转移到另一个地方时,非打印字符可能会变得可见,从而导致混乱。
文本不一致
大小写的差异会导致排序错误,至少会使数据库看起来不整洁。比如“瑜伽课”和“瑜伽课”指的是同一个东西。MS Access 不区分大小写,但是您需要检查您使用的数据库包是如何处理大写和小写的。
使用单数和复数名词也会引起问题。例如,“铰链”和“铰链”可能指的是同一个东西。如果数据库中同时有这两个记录,可能会导致重复记录(这将在本章后面讨论)。
编码错误
当输入不正确的代码时,会出现编码错误。例如,如果 1 =男性,2 =女性,并且在某些情况下错误地输入了女性的 1 而不是 2,那么这就形成了编码错误。这种错误通常发生在数据收集时,例如在电话或面对面访谈中。
有时可以将列自动设置为默认值。例如,默认情况下,代表性别的列可以设置为男性。如果数据输入者错误地忽略了这一列,即使是女性顾客,也会保留默认值。
缺失数据
数据丢失可能有多种原因。例如,客户可能拒绝回答问题,数据输入者可能没有数据输入数据库,等等。如果我们忽略所有缺少值的行,那么有用的数据就会被浪费掉。
缺失值不一定以一致的方式出现在数据库中。例如,缺失的数据可以用超出范围的数据进行编码,例如 999,这样就很容易看到。但是,有时像 0 这样的值可能用于编码可能不突出的丢失值。其他时候,缺失的数据由默认值替换(例如,性别=男性)。虽然这样的值看起来是正确的,不会留下明显的错误痕迹,但过一会儿,数据就会变得没有意义或有误导性。
数据类型
在数据库中,数字有时不是数字类型,而是以文本类型存储,如“短文本”。这意味着计算总数、平均值等所需的数学运算不能应用于该值。此外,这些数字不能以数字精确的方式排序。例如,如果数字 5、11、4、10 和 9 以“短文本”数据类型保存并按升序排序,则结果将是 10、11、4、5 和 9,这在数字上是不准确的。
输入日期时应使用“日期/时间”之类的类型。否则,诸如过滤给定月份的所有行之类的操作将无法应用。
Note
筛选器使您能够专注于感兴趣的行的子集。例如,您可以只查看或搜索包含给定时间段内的日期的行;包含以 s 开头的名称的所有行;或者包含数量少于 5 的所有行。图 10-1 显示了 Access 中可用的过滤器类型。
图 10-1。
The filter function in MS Access
数据集成错误
您的数据库可能包含使用各种方法从多个来源获取的数据。这可能意味着使用不同的数据表示,不一致地使用单位和缩写,等等。例如,可以使用其他格式来表示客户地址:一种格式将除邮政编码之外的整个地址放在一列中,另一种格式将地址的每个部分放在不同的列中。
以下是不同格式的货币数据的一些示例:
- 500 万美元
- 3000 万至 3500 万美元
- 15 亿
- 20 亿美元
- One million
- One thousand
因此没有一致的单位或数据类型。
截尾和截断
截尾数据指的是有限但不精确的测量值。例如,所有持续时间超过 20 分钟的电话都被记录为持续 20 分钟。这意味着数据可能不反映实际情况:如果所有呼叫持续时间超过一小时,在这种情况下,它们仍然会被记录为持续 20 分钟,这并不反映实际情况。
截断数据是指超出或低于某个界限时被丢弃的数据。例如,每月通话时间少于两分钟的客户不会被输入数据库。与审查一样,截断会导致数据不能反映真实事件。
单个单元格中有多个数据项
我们在第七章中看到,每个单元格应该只包含一个数据项。例如,输入为“瑜伽课和太极课”的活动应分别输入为“瑜伽课”和“太极课”。
极端值
术语“异常值”指的是与预期的显著偏离。例如,在每个人的卡公司的每个客户每月卡销售额的下列数字序列中,最后一个值是意外的,因为它远远高于所有其他值:
2,4,9,5,10,2,7,6,8,3,104
离群值可能是合理的,并且非常有用。例如,如果 104 是正确的,它可能代表高利润的客户。然而,104 也可能代表打字错误。
有些异常值可能只有在两列比较时才会出现,比如年龄和性别。举个例子,假设你有一群男女混合的人,M =男,F =女,年龄平均分布在 20 到 50 之间,如表 10-1 中的合计列所示。假设其中一名女性比其他所有女性年轻 10 岁。只有当性别年龄分开时,人们才会注意到这一点,如表 10-1 所示。
表 10-1。
An Example of an Outlier Based on Two Columns
| 年龄范围 | 频率(米) | 频率(华氏度) | 总数 | | --- | --- | --- | --- | | 40 | Eleven | nine | Twenty | | 30 | nine | eight | Seventeen | | 20 | Eighteen | one | Nineteen |不合逻辑的行
发生一些错误是因为它们不符合您的业务逻辑流程。例如,发票日期早于业务开始日期是不合逻辑的。此外,任何产品的数量都不应小于零。
重复行
重复行是指表示同一事物(如客户或产品)的两行或更多行,而实际上应该只有一行。这些行的值不需要完全相同:它们可以表示相同的内容,但是它们的所有或部分列的值不同。例如,由于错误的更新,Cards for Everyone Inc .的客户可能在两行中有相同的姓名,但有不同的联系人数据。重复项可能由不同的行组成,这增加了检测它们的难度。
相同的事物使用不同的名称会产生重复的行。例如,“糖尿病南区”和“糖尿病南区”指的是同一个组织,需要删除一个。
形容词的使用也可能导致重复行。例如,“放松瑜伽课”与“瑜伽课”相同,只需要使用“瑜伽课”。
以“the”为前缀的名称也可能导致重复。例如,“咨询中心”和“咨询中心”是一样的。
数据库表之间的链接断开
随着时间的推移,插入、删除和更新将导致链接断开。例如,在 Cards for Everyone Inc .中,供应商可能会停止交易。如果您要从“供应商”表中删除供应商,但不从“产品”表中删除他们提供的相应卡片,您可能会向您的客户提供不再可用的卡片。
除了表之间的链接之外,查询、窗体和报表还可能基于以不兼容的方式进行了调整或不再存在的表。
检测、纠正和防止错误
以下部分假设您的数据存储在数据库内的一系列链接表中,如第七章中所述——所有记录长度相等,所有列的数据类型相同,每一行都有唯一的标识符。
与任何数据处理练习一样,在开始之前备份数据库是非常重要的。完成后,使用以下步骤来检测、纠正并最终防止错误。您的数据库应该使您能够自动执行这些操作。本章中的示例使用 MS Access 2013。
错误检测、纠正和预防的背景通常来自于您自己对业务的认识。例如,知道数量的缺失值条目是“999”。这种信息通常只存在于人们的头脑中,因此有必要对其进行记录,以确保其能够被传递。
打字错误的检测和纠正
您应该从检测和纠正打字错误开始,因为它们会加剧其他错误。
一些打字错误可能来自一个雇员小组,如果每个人都在他们插入的任何行上附上他们的姓名首字母,那么在需要的地方可以给予额外的培训。
拼写检查器
大多数数据库都有拼写检查功能,使您能够查找和纠正拼写错误的单词。拼写检查器还可以找到不经常使用的值,如产品或公司名称。
频率分布
当您在寻找输入错误时,考虑频率的分布是否符合您的预期。在像性别这样的列中,你会看到两个类别——男性和女性。频率分布将有助于显示频率中的任何偏差。
频率分布提供了每个值在数据中出现的次数。在第一章中,您已经看到了“人人卡公司”的各类卡的频率分布示例;如图 10-2 所示。
图 10-2。
Sample query for Cards for Everyone Inc.
您可以看到数据库中有两张类别为“生日”的卡片,其他三个类别各有一张。频率分布可应用于由名称(如图 10-2 所示)和数字数据组成的数据。
例如,如果您注意到男性比女性多,您可能会考虑这是否是输入错误。
频率分布还将显示拼写错误:例如,如果每个人公司的卡片的“生日”类别之一被拼写为“生日”,则频率分布将有一个“生日”出现,一个“生日”出现。图 10-3 显示了图 10-2 中存在生日拼写错误的查询。频率分布在第十三章中有更详细的介绍。
图 10-3。
Sample query with spelling mistake in the Cards for Everyone Inc. database
从文本中删除不需要的空格
要删除不需要的空格,可以对给定的列应用以下函数:LTrim(删除左边的空格)、RTrim(删除右边的空格)和 Trim(删除两边的空格)。
使用移动技术
将数据直接输入智能手机或平板电脑等移动设备,可以防止手写问题,并有助于减少输入错误。移动技术包含在第九章中。
文本中的非打印字符
更正非打印字符通常就是找到并删除它们。通过使用内置的查找和替换功能来查找字符,也许可以在数据库中更正这些错误。最困难的步骤是识别可能出现的非打印字符的类型。建立一个清单是有意义的。您的列表可能包括:
\n
(新行)\b
(粗体)\ul
(下划线)
由于许多非打印字符包含\
,您可以从搜索文本中的\
开始,并使用结果来识别您的非打印字符。理想情况下,编写一个能够自动查找和替换非打印字符列表的宏会很有用。
Note
宏是一条指令,当它运行时,启动一条或多条指令来执行任务。宏适用于电子表格、文字处理器文件和数据库。编写宏通常是为了执行一组经常需要的任务,例如创建一个带有固定标题集的表格。
作为预防措施,如果您的非打印字符似乎来自给定的来源,您可以尝试确定一种替代方法来获取数据。
文本中的不一致
文本的短列中的不一致,例如姓名的第一个字母(即 pat 相对于 Pat ),可以通过按字母顺序对该列进行排序并向下扫描任何不正确的内容来检测。
一些数据库具有可以纠正大小写不一致的功能。例如:
LOWER: Convert all uppercase letters in a text string to lowercase. UPPER: Convert text to uppercase letters.
单数/复数错误可能很难发现和纠正。创建每次数据清理期间要应用的检查列表可能会有所帮助。例如,您的列表可能包括检查:
- 阶级与阶级
- 会话与会话
- 教堂对教堂
如果您选择用 Class 替换 Class 的每个实例,您可以使用 find and replace。
编码错误
为了避免默认值,例如男性代表性别,可以使用一个查询表,将未知作为默认值。这也有助于在一个列表中有清晰的代码和相应描述的查找表,这样就不会有歧义。
列可以设置为查找类型。这意味着它的值可以以下拉菜单的形式预先确定。这些菜单可用于表格或表单中的数据输入。图 10-4 显示了“产品”表中“人人公司”卡片的“类别”列的下拉菜单。填写该栏时,可以选择所需的值。这些值在每次使用时都是一致的,因为它们是由下拉菜单决定的。打字错误是不可能的。
图 10-4。
Lookup table for the PRODUCTS Table in Cards for Everyone Inc.
缺失值和异常值
频率分布可能有助于检测缺失值。例如,对于数字数据,由超出范围的数字(如 99)表示的缺失值将很容易被发现,因为它们通常显示出异常高的频率。但是,如果缺少的值用一个范围内的数字表示,比如 0,那么就不太容易找到。如果您有一个频率为 0 的分布,其中一些可能表示缺少值,可能需要密切关注。
频率分布还以局部方式显示数据是否丢失。例如,如果某个特定地理区域的所有调查都丢失了,那么很明显该区域出现了问题。
条形图对于检测异常值很有用。条形图显示不同类别或组的频率或其他度量,不同条形图的高度与其代表的类别大小成比例。
例如,图 10-5 中的条形图显示了异常值部分描述的 Everyone Inc .客户的 11 张卡的月销售量。这些是:
2,4,9,5,10,2,7,6,8,3,104
图 10-5。
Outlier detection for Cards for Everyone Inc.
您可以立即看到,客户 11 的月销售额远远高于其他客户,这反映出它是一个异常值。
当您收集所谓的连续比率数据时,可能会发生一个特别有趣的情况,这是一种允许无限细分的数字数据。你将在第十三章中了解更多。有了这样的数据,一种模式通常被称为正态分布。这是数据以非常规则的方式围绕平均值均匀分布的地方。
的意思是:
这个在第十三章中有涉及。
如果将数据的频率分布绘制成线形图,它将呈现钟形曲线的形状,钟形曲线的峰值位于平均值处(图 10-6 )。简而言之,正态分布告诉我们,大多数数据将接近平均值,如果有很大一部分不接近,就可能有问题。图 10-6 中一些虚构的连续比率数据的概率显示了观察到任何观察值的可能性。
图 10-6。
A normal distributuion with the mean equal to 15
因此,分析正态分布可以帮助您检测错误。但是,不能保证您的数据将遵循正态分布,因此应谨慎遵循此建议。如需进一步阅读,请参阅本章末尾的参考资料。
可以用数值代替缺失的数据,如列平均值。这一过程被称为“插补”。像这样的简单插补没有考虑到列之间的任何关系,应该谨慎使用,因为它可能会引入偏差。
当您输入数据时,对缺少的值应用一致且适当的编码是很重要的。例如,在值状态的上下文中,使用术语“无”来表示缺少数据是令人困惑的。这可能意味着客户住在国外。诸如“未知”之类的条目会更合适。第二十章涵盖了通过有效的员工培训减少价值缺失的主题。
与缺失值一样,处理异常值的最佳方式可能是将它们设置为列平均值。但是,与缺失值一样,您必须小心不要过于频繁地应用这种方法。
检测由一对列生成的异常值的有效方法是使用散点图。散点图显示数值对之间的关系:在本例中,是同一数据库表中的列。一个点代表每个个体或物体,并参照两个轴上的测量值进行定位。图 10-7 显示了一个例子。
图 10-7。
A scatter plot depicting the relationship between price and amount sold per week for Smart Wheelbarrows Inc.
寻找与其他点不同的点。图 10-7 显示了不同价格的小型豪华独轮车的周销售量。你可以看到,当价格设定为 90 美元时,销售额的下降与其他销售水平不成比例。散点图在第十三章中有详细讨论。
标识每列的数据类型
应该确定每一列的数据类型。在 MS Access 中,数据类型列在相应表的设计视图中,如本书末尾的附录所示。
给定列的数据类型应该反映该列中数据的性质:不匹配可能表示有错误。
- 日期有一种类型,如日期/时间
- 美元有一种类型,如货币
- 只回答“是”或“否”的列具有“是/否”这样的类型
- 任何包含需要应用计算和排序的数字的列都应该有一个数字类型,如数字或货币
- 根据要插入的文本数量,文本可以出现在不同类型的列中,例如,MS Access 中的短文本最多可容纳 255 个字符
这种错误很容易纠正,因为您可以在表的设计视图中直接改变数据类型。应用此操作时,可能会警告您数据可能会丢失,因此请确保您正在进行正确的更正,并且您的数据库已备份。
数据集成错误
从外部数据源导入数据后,常见的任务是将两列或更多列合并为一列,或将一列拆分为两列或更多列。例如,您可能希望将包含全名的列拆分为名和姓列。或者,您可能希望将包含地址字段的列拆分为单独的街道、城市、地区和州列。反过来也可能是正确的。
与 MS Excel 一样,LEFT、MID、RIGHT、SEARCH 和 LEN 函数可用于在 MS Access 查询中将一列拆分为两列或更多列。在名称中搜索空格后,名称将被拆分。
同样,与 MS Excel 一样,可以使用&函数来合并列。
Note
在这个早期阶段,与其学习如何在数据库中应用这些函数,不如将数据发送到 MS Excel 电子表格中,在您熟悉的环境中应用这些函数,然后将数据发送回数据库中经过调整的表中。
截尾和截断误差
频率分布可能显示截断误差和截尾误差。例如,如果频率分布显示大量电话呼叫持续了 20 分钟,但您知道许多电话呼叫持续的时间超过了 20 分钟,则此类分析可能表明存在截断错误。
或者,如果出现频率分布左端的数据丢失,表明在特定时间之内的呼叫没有被记录,即使您知道它们已经发生,这可能表明审查错误。
一般来说,检测删截和截断错误依赖于业务人员的知识。重要的是,任何审查和截断方法都要记录在案,以便其他员工了解它们。
将一行拆分成两行或更多行
数据项可能已经合并,需要分离。例如,输入为“瑜伽班和太极班”的组织应该在两个单独的行中输入为“瑜伽班”和“太极班”。
检测这样的条目并不容易。您可以搜索逗号之类的分隔符。你可以搜索像“和”这样的词。当您在日常工作中进行数据清理或使用数据库时,您可能会注意到这些错误。
除非这种错误经常发生,否则最好是通过向有问题的表中添加一个新行并拆分有问题的单元格来手动更正它们。
检查不合逻辑的错误
您可以使用约束检查来识别可能出现不合逻辑错误的列错误。例如,您可以确保:
- 发票表中的日期总是在业务开始日期之后
- 订购数量绝不会少于 1
- 某人的头衔和性别是一致的——例如,如果他们的头衔是夫人,他们的性别就不应该被编码为男性
除了手动搜索这些错误之外,在一些数据库中还可以设置一个验证规则。这种规则限制不满足约束的数据的输入。有效性规则的语法与 MS Excel 等电子表格中使用的表达式相似。一些不合逻辑的错误,如涉及姓名和性别的错误,在入境时可能难以识别,一些手工检查可能是必要的。
消除重复行
您应该尝试在数据清理过程的最后消除重复行。这是因为错误删除的过程会使重复的行更加明显,所以您需要最后再做一次,以确保它们都被更正。
您需要决定如何处理某些名称—例如,是否要从“连接南区”中使用的组织名称的开头删除“the”。
一些行可能表示相同的东西,但使用稍微不同的名称。
对包含许多不同条目的列的频率分布使用字母排序有助于识别几乎相同的名称。一旦确定了它们,就可以给它们起一致的名字。
或者,可以确保给定地址的每个客户都是唯一的,假设这是一个合理的假设。如果名称稍有不同,可以合并这些行。
和任何生意一样,你对当地的了解是最重要的。例如,在 Connecting South Side,组织表中可能会列出许多瑜伽课程。这些课程可以用 Yoga 这个词来过滤,它们的形容词也可以去掉,比如把放松瑜伽课改成瑜伽课,以达到一致性。
一旦找到了不一致的地方,就可以应用许多数据库都提供的重复检测技术来识别匹配或部分匹配的行。
Note
您可能会发现,对表中的一组列应用频率分布比应用重复检测方法更容易。任何出现频率超过一次的行都可能是重复的。
检测表之间断开的链接
避免表与查询、窗体和报表之间断开链接的最佳方法是,如果插入、更新或删除行或表会导致断开链接,则指示数据库不要这样做。这是在表之间插入链接时强制执行的一个预防步骤。
Note
这个过程被称为加强关系完整性。
如果您在建立关系时没有设置这些措施,您可以下载免费的数据库插件来识别所有断开的链接。
定位两个链接表之间断开的链接的另一种方法是使用两个表中的列运行查询,通过相应的行有效地连接表。这就是所谓的连接查询。如果结果查询的行数少于“子”表,则子表包含断开的链接。这本书的附录告诉你如何建立一个简单的查询。
Cards for Everyone Inc .的一个例子涉及到 Customers 表和 Invoices 表之间的链接。这两个表之间的关系是一对多的,发票是子表,客户是父表。如果连接的客户和发票表的行数少于发票表的行数,您就会知道有些发票没有链接到客户。图 10-8 显示了客户和发票表之间可能的连接查询的查询设计,图 10-9 显示了输出。图 10-9 显示了 5 行,即与发票表相同,所以你可以断定没有遗漏环节。
图 10-9。
Output from the join query shown in Figure 10-8
图 10-8。
Query design of a join query between the Customers and Invoices tables of the Cards for Everyone Inc. database Note
连接查询至少由两个表中的一列组成。
您的数据库可以让您快速识别所有不匹配的行。例如,MS Access 有一个名为“查找不匹配的查询”的工具。
数据库维护
数据库不是静态的,会定期添加新的记录。清洁也必须经常进行。这是第十一章中讨论的数据库维护的一部分。
摘要
干净的数据是做出有效业务决策的基础。清理数据的过程可能是一个漫长的过程,涉及到检测、纠正和有希望的防止错误。错误可能来自许多方面,这意味着清理过程可能很复杂。此外,必须定期完成数据清理,以跟上数据库的发展。
表 10-2 总结了本章讨论的错误的纠正和预防。
表 10-2。
Summary of Error Correction and Prevention Techniques
| 错误类型 | 清洁技术 | | --- | --- | | 打字错误 | 数据库拼写检查频率分布使用移动技术从文本中删除不需要的空格 | | 显示非打印字符 | 识别和定位违规字符并删除 | | 矛盾 | 使用内置命令(标准化大小写)选择单数或复数名词并编辑 | | 编码错误 | 只提供名称或同时提供名称和代码的查找表 | | 缺少值 | 频率分布条形图正态分布 | | 错误的数据类型 | 直接在设计视图中更改数据类型 | | 数据集成错误 | 使用内置命令(拆分列) | | 截尾和截断误差 | 内部知识的频率分布 | | 一个单元格中的多个数据项 | 将一行拆分成两行或更多行 | | 不合逻辑的错误 | 使用验证规则 | | 重复行 | 频率分布和排序使用内置的重复检测工具 | | 检测断开的链接 | 联接查询运行查找不匹配项查询 |进一步阅读
《假人统计学》,作者黛博拉·j·拉姆齐、约翰·威利父子公司;第二版,2011 年,ISBN-13: 978-0470911082。
十一、维护您的数据库
数据库维护旨在保持数据库平稳运行。数据库不是静态的;数据被添加、删除和移动,随着时间的推移,这种变化会导致数据库变得缓慢。性能不佳的数据库会耗费您的资金并浪费用户的时间。数据库维护包括备份数据库、压缩数据库和保护数据。本章与数据清理有重叠,数据清理在第十章中讨论。本章讨论您需要定期执行的作业。
备份您的数据库
维护数据库的一个重要方面就是定期备份。这样,如果它发生任何问题,将有另一个副本可用。如果没有最近的备份,您就没有机会在灾难发生后恢复数据,例如计算机丢失或被盗,或者硬盘停止工作。
只要有时间就备份数据库是不够的。应该定期安排备份。一些数据库系统自动执行备份,定期将备份发送到另一个位置。云还提供备份服务,这将在第十八章中介绍。
理想情况下,您应该随着时间的推移运行多个备份,而不是重复覆盖同一个备份。这种方法为您提供了从任何给定时间点发生的问题中恢复的选项。最好将所有备份的数据加密,这样它们就不会被窃取;在本章的后面,您将了解更多关于加密数据的内容。
虽然现场备份很重要,但在异地保存数据库的加密副本也很重要。如果自然灾害或盗窃导致无法访问您的现场计算机或服务器,那么异地备份就变得至关重要。一般来说,备份任何一旦丢失就会妨碍业务的数据。
备份的频率取决于您特定的行业和业务需求。对于大多数企业来说,每夜备份就足够了。但是,如果您的数据在一天中发生了巨大变化,那么在关键信息发生变化时,全天备份数据库可能是有意义的。
当你有了一个好的备份系统后,你需要定期测试它以确保它能正常工作。您还需要决定谁将负责备份。
压缩您的数据库
当您向数据库中添加和更新数据和/或更改其设计时,文件会变得更大。这一增长部分来自新数据,但部分来自其他来源:
- 当您删除数据库行或对象(表、查询、表单等)时。),行或对象占用的磁盘空间不会自动回收。这是因为被改变的行或对象不能被删除,而它仍然可以连接到其他地方的其他行和对象。
- 您的数据库创建临时的、隐藏的行和对象来完成各种任务。要求对数据进行排序的查询就是一个例子。有时,在任务完成后,这些临时行和对象会保留在数据库中。
数据库文件可能会快速增长,被临时行和已删除行的剩余部分以及表、表单和查询等对象填满。性能可能会受到影响:对象打开速度可能会变慢,查询运行时间可能会比平时长,典型操作可能会更耗时。
为了解决这个性能问题,一旦不再需要这样的对象和行版本,就可以回收它们占用的空间,供新的对象和行使用。避免数据库增长和随之而来的损坏的最简单方法是定期压缩数据库。许多数据库都有一个允许你这样做的功能;比如 MS Access 有一个功能叫压缩和修复。压缩过程复制数据库文件,修复其对象,删除任何临时数据,并重新排列碎片。
显然,频繁接收更新或删除的表比很少更新的表需要更频繁地压缩。设置只压缩选定表的定期任务,跳过那些不经常改变的表,这可能是有用的。
至少,每天在低使用率时间压缩一次数据库是有意义的,必要时还可以压缩更新频繁的表。请记住,不能在共享数据库打开时压缩它。因此,您需要告诉用户在多长时间内他们必须避免使用数据库。如果您记录了压缩数据库需要多长时间,您就可以对数据库不可用的时间做出相当精确的估计,并相应地提供指导。
优化您的硬盘和存储设备
优化您的硬盘,有时被称为碎片整理,可以被视为压缩和修复您的硬盘或存储设备。当您保存、更改或删除文件时,碎片会随着时间的推移而产生。保存到文件的更改通常存储在与原始文件不同的位置。随着时间的推移,你的机器会变慢,因为它必须在不同的地方寻找打开一个文件。磁盘优化或碎片整理是将碎片数据整合到硬盘或存储设备上的过程,因此它的工作效率会更高。
碎片严重的文件(或驱动器)速度很慢。繁忙的数据库使问题更加复杂,因为所有这些事务会产生更多碎片。因此,你应该定期整理你的硬盘。您的操作系统提供了一种称为碎片整理程序的碎片整理工具。默认情况下,一些碎片整理程序会定期自动运行;例如,在 Windows 8.1 上,碎片整理程序每周运行一次。但是,如果您愿意,也可以手动操作。
碎片整理可能需要一段时间,所以将其安排在系统不使用的时候。您拥有的每个程序和文件都将从这一过程中受益,而不仅仅是您的数据库。但是,由于数据库的大小,它特别容易因为碎片而导致性能下降。
拆分数据库
我们在本书中讨论的数据库,如 MS Access 或 LibreOffice 和 OpenOffice 开源数据库,都存在于桌面上。这意味着它们的文件结构不同于 SQL Server 等大型数据库,因为数据和对象存储在同一个文件中。但是,最好将数据库分成两个独立的文件—一个数据库包含表、查询、表单和报表等对象形式的数据(后端),另一个数据库包含用户友好界面形式的入口点(前端)。
前端的一个例子是一个网页,它使用户能够预订机票,而所有的数据处理都在后台数据库中进行。
这种设置有助于防止数据库文件损坏,并通过将数据保存在用户不直接访问的单独文件中来限制数据丢失。当需要升级数据库时,只需用新版本替换旧的前端文件。如果您将数据和前端存储在同一个文件中,则必须将数据从旧文件移动到新文件中,这样效率很低。
您的数据库应该包含一个工具,使您能够使用几个简单的步骤来拆分它:MS Access 使用一个名为数据库拆分器的工具。
审核用户
应定期检查授权用户。对于小型企业,这可能是每个月左右。例如,您公司的一些前员工可能仍然可以访问您的数据库,这需要解决。理想情况下,最好在更改发生时更新权限,但是定期审计将帮助您找到您忘记或错过的更改。
维护安全的密码列表
如果您对数据库文件进行密码保护,保留一份所有密码的安全列表是很重要的。该列表及其位置需要与您信任的人共享。如果你生病了,发生了事故,或者正在度假,这时用户忘记了密码,或者新员工需要培训,那么这个列表将是必不可少的。
使用防火墙、防病毒和间谍软件保护软件
您的数据库需要持续和最新的病毒和间谍软件防护,系统中的所有文件也是如此。
Note
计算机病毒是一种在你不知情的情况下被加载到你的计算机上的软件,通常会执行一些不受欢迎的操作。即使是简单的病毒也能自我复制,并迅速使计算机停止运行。一些病毒访问私人数据或损坏数据。
间谍软件与病毒的相似之处在于,它会在没有警告的情况下出现,并继续做一些不受欢迎的事情。它通常旨在监视您或您的计算机,经常跟踪您访问的网站并记录您的击键,以窃取您的帐户登录信息。
防火墙是位于计算机和网络之间的软件或硬件块,只允许某些类型的数据通过。例如,防火墙可能允许检查电子邮件和浏览网页,但可能不允许诸如文件共享之类的操作。如果您通过路由器连接到互联网,那么您已经有了一种硬件防火墙来防止随机网络威胁到达您的系统。
有时病毒能够穿越防火墙进入你的系统。因此,在包括笔记本电脑和平板电脑在内的所有计算机上使用和更新抗病毒和反间谍软件是至关重要的。请记住,每天都有新的病毒产生,软件设计者需要一段时间才能赶上黑客。因此,保持您的病毒定义最新至关重要。
病毒扫描程序将定位并清除硬盘上的病毒。实时病毒扫描程序会在它们到达时注意到它们,甚至在它们攻击磁盘之前就注意到了,但这些可能很贵,并会使您的计算机稍微变慢。
让您的硬件、操作系统和其他软件保持最新
病毒可以在旧设备上滋生。为了保护您的数据库和其他文件,尽可能升级到新的路由器和计算机非常重要。
操作系统应该是相当新的,应该包含最新的更新,包括最新的安全修复。在您的系统上运行的其他软件也是如此。
随着时间的推移,旧的操作系统变得不受支持。例如,自 2014 年 4 月起,微软停止支持 Windows XP,并且不再提供更新。当使用 Windows XP 时,您的计算机仍然可以工作,但是它可能更容易受到安全风险和病毒的攻击。也不再支持 Internet Explorer 8。
加密您的数据库
您的数据库需要加密,以保护其中的数据免受黑客攻击。这是一种数据保护措施;数据保护在第八章的中介绍。
Note
加密意味着以这样一种方式转换数据,即只有具有特定代码(称为密钥)的人才能读取它。
您可以激活许多操作系统标配的全磁盘加密工具。但是,Windows 8.1 的标准版本不包括加密。您需要升级到专业版或企业版。或者,你可以使用免费的加密工具,比如 TRUECRYPT 和 GnuPG。
维护干净的数据库
清理数据是一项耗时且昂贵的任务,详见第十章。清理完数据后,您不会希望在一小部分值发生变化后,在整个数据库中重复整个过程。确定如何保持数据库的整洁是一项挑战。两种可能的方法是:
- 在添加新数据之前,清理所有发往数据库的新数据。
- 使用 Windows 中的数据库比较功能等工具清除数据库中修改过的任何数据,该功能可标记数据库两个版本之间对象的设计更改。如果您想识别数据本身的变化,一种方法是将您的数据移动到电子表格并使用电子表格比较。
除了检查单个值的准确性之外,您还需要识别重复的行。当进行修改以及向表中添加新行时,可能会发生这种情况。第十章解释了如何检测重复行。
摘要
数据库维护包括您将定期执行的任务。目标是让您的数据库尽可能平稳地运行,并保护它免受灾难和外部威胁。诸如备份数据库、压缩数据库以及保持软件和硬件最新等任务都很重要。
十二、搜索您的数据库
如果不能有效地访问数据,那么将数据存储在数据库中就没有什么意义。例如,当您在数据库中搜索他们的详细信息时,客户不喜欢长时间等待。一般来说,如果您了解一些基本的技术,很容易快速找到数据。
将本章放在上下文中,第十三章涵盖了数据分析,它涉及到数据的检查,而本章关注的是发现数据,这是分析之前的步骤。本章与第十九章有些重叠,后者涵盖了在线搜索。此外,您的员工能够高效地搜索数据库也很重要;员工培训包含在第二十章中。
与本书中的所有章节一样,示例使用 MS Access 2013。书的附录也有 LibreOffice 5 Base 中的例子。
搜索类型
您可能想知道您想要在数据库上执行什么类型的搜索,以及哪些类型是可能的。决定因素包括:
- 搜索将覆盖的数据库表的数量
- 无论您有完整的还是部分的搜索词
- 无论是搜索单个数据项还是大部分数据
搜索示例包括:
- 确定客户是新客户还是现有客户
- 识别给定产品的供应商
- 寻找最老的顾客
- 标出不付账的顾客
数据库搜索是你营销工作的一个有用的前奏。例如,大多数企业不会只迎合一种类型的客户,即使他们销售单一的产品或服务。例如,智能手推车公司可以向大型花园中心以及公寓的所有者销售。这是两种截然不同的客户,有着不同的需求。因此,用相同的广告电子邮件瞄准这些客户不如发送每个定制的信息有效。花园中心的所有者可能对批量购买手推车的交易感兴趣,而个人可能对单项商品的折扣感兴趣。能够根据一列或多列(如地址、年龄和性别)将数据库划分为客户群是很重要的:这个过程称为细分。
就像整本书一样,本章中的许多例子都是基于 Cards for Everyone Inc .的案例研究。图 12-1 重述了其数据库的设计,以供参考。
图 12-1。
Database design for Cards for Everyone Inc.
在表格中搜索一行或多行
涉及给定表中一行或多行的搜索可以分为基于给定列值的搜索和基于多个列值的搜索。
基于给定的列值进行搜索
以下部分介绍了基于给定列值搜索一行或多行。
搜索单行
最简单的搜索类型是根据给定的列值在给定的表中查找一行,比如根据客户的姓氏来搜索客户。如果您想知道向您购买产品的人是新客户还是现有客户,这将非常有用。
最明显的方法是直接看表。通过按字母顺序对所需的列进行排序,可以使搜索变得容易得多。图 12-2 显示了在按姓氏排序之前每个人公司卡中的客户表,图 12-3 显示了之后的表。(为了使示例更加有用,在第一章中使用的表格中增加了三个额外的名字。)
图 12-3。
The Customers table from Cards from Everyone Inc. sorted on the LastName column
图 12-2。
The Customers table from Cards from Everyone Inc. Note
对数据库列中的数据进行排序将在本书末尾的附录中介绍。
排序后的列表就像一个姓名索引,可以通过扫描找到与搜索词匹配的姓名。
要避免扫描名称列表,请使用 Filter 命令。如果您使用 Filter 命令的 Equals 选项,您将直接找到所需的数据。要操作筛选器命令,请在要应用筛选器的列中选择一个单元格,然后执行下列操作之一:
- 点击出现在上图 12-2 中上部的过滤器图标,并选择文本过滤器。
- 右键单击并从菜单中选择文本过滤器。
图 12-4 显示了产生的过滤器命令。当您单击 OK 时,将显示 Customers 表中包含“LastName 等于 Garcia”的单行。
图 12-4。
A text filter on the LastName field is applied to the Customers table of the Cards from Everyone Inc. database
这是一个非常简单的例子。在现实世界中,搜索可能要复杂得多。如果出现以下情况,则需要进一步搜索:
- 不止一个顾客姓加西亚。
- 加西亚拼错了。
- 只有丽莎的名字被输入。
有搜索可以覆盖这些可能性;它们将在本章后面讨论。
搜索多行
或者,您可以根据一列中的值在给定的表中查找多行,例如在 Cards for Everyone Inc .数据库中,所有类别为“生日”的产品。
图 12-5 显示了每个人卡片的产品表,图 12-6 显示了只有生日卡片的同一张表。在后一种情况下,应用了类别=“生日”的过滤器。
图 12-6。
The Products table with the Category = ‘Birthday’ filter applied
图 12-5。
The Products table in the Cards for Everyone Inc. database
另一种类型的搜索涉及应用于数值的过滤器。例如,在产品表的情况下,图 12-7 显示了根据小于或等于$3.00 的价格筛选行的情况。
图 12-7。
The Products table for the Cards for Everyone Inc. database filtered on Price ≤ ‘$3.00’ Note
除了选项应用于数字之外,可以使用与前面解释的文本相同的方法在 motion 中设置这样的过滤器。
基于给定表中的多个列值进行搜索
您可能会根据多个列中的值在给定的表中查找一行或多行,例如根据名字和姓氏查找客户。例如,假设每个人公司的卡的客户表中有一个名为约翰·加西亚的客户,如图 12-8 所示。
图 12-8。
Updated Customers table in the Cards for Everyone Inc. database
对 LastName = 'Garcia '进行过滤得到的输出如图 12-9 所示。
图 12-9。
Filtering the Customers table from the Cards for Everyone Inc. database on LastName = ‘Garcia’
如果过滤后的输出很长,您可以使用 FirstName = 'Lisa '应用第二个过滤器(当然,假设您只尝试查找 Lisa Garcia)。
单个表上的搜索技术概述
对于这种在给定表中查找一行或多行的搜索,排序和过滤是查找相关数据的理想方法。使用表格符合您的电子表格知识,因为您使用的是您已经熟悉的查看数据的方法。
前面的例子非常简单地描述了您可能会遇到的情况。随着业务的增长,您的数据库表可能会有数百或数千行,因此仔细应用排序和筛选非常重要。
本节假设您拥有关于您正在查找的数据的完整信息。本章后面关于部分数据的部分将考虑不属于这种情况的情况。
基于多个表格的搜索
在这一节中,我们感兴趣的是涉及多个链接表的搜索。这种搜索的一个例子是 Cards for Everyone Inc .数据库中来自给定供应商的所有产品。在这种搜索中,行的概念失去了相关性:products 表中有包含产品的行,而 Suppliers 表中有包含供应商的行。但是,为了进行搜索,您会对这些行在数据库中是如何链接在一起的感兴趣。
不再可能单独打开“产品”或“供应商”表来执行搜索,因为只有您需要的部分数据可用。你需要一种方法来把它们整合在一起。当您的搜索涉及多个链接表时,您将开始理解数据库有多强大,以及它们与电子表格有何不同。
基于多个表进行搜索时,主要考虑的是如何将相关数据组合在一起以及如何查看这些数据。有两个主要的选择,这两个你以前都遇到过。你可以使用一个连接查询(在第十章中介绍)或者一个表单(在第一章中介绍)。
使用连接查询
由于连接查询最类似于电子表格,我们将从这种方法开始。
Note
这本书的附录描述了如何建立一个简单的查询。
每次设计任何查询时,都必须首先选择要从中选择数据的表。要在 Cards for Everyone Inc .数据库中查找来自给定供应商的产品,需要选择 products 和 Suppliers 表。如附录中所述,您可以使用查询向导或查询设计。这里我使用查询设计,因为它显示了表的图形表示。图 12-10 显示了 Cards for Everyone Inc .数据库的链接产品和供应商表以及两个选定的列——产品名称和供应商名称。没有选择其他列,因为对于这次搜索,我们只对供应商的名称感兴趣,仅此而已。
图 12-10。
Query design over the Products and Suppliers tables in the Cards for Everyone Inc. database
图 12-11 显示了运行图 12-10 中的查询的结果:注意查询的输出看起来像一个表格或电子表格,并反映了您习惯的数据表示。这些表已经在 SupplierID 列的基础上“连接”起来,SupplierID 列将它们链接在一起。
图 12-11。
Output of the Products and Suppliers query on the Cards for Everyone Inc. database
通过少量的输出,很容易识别您正在寻找的数据——例如,哪些产品由哪些供应商提供。但是,和前面几节一样,如果有大量的行,还需要做进一步的工作。与表一样,可以使用本章前面介绍的技术对查询进行排序或筛选。例如,如果您想知道谁提供了船只,您可以按字母顺序对 ProductName 进行排序,向下扫描船只列表,并从相邻列中读取供应商的名称 Old Favorites。或者你可以在 ProductName = 'Boats '上过滤,这将给出如图 12-12 所示的结果。
图 12-12。
Query in Figure 12-11 for the Cards for Everyone Inc. database filtered on ProductName = ‘Boats’
使用表单
图 12-13 显示了一个表格,该表格涵盖了每个产品的组合数据及其供应商的相关数据。
图 12-13。
A form combining data from the Products and Suppliers tables of the Cards for Everyone Inc. database Note
本书末尾的附录解释了如何创建一个简单的表单。
总共有五个表格,每个产品一个。表单上的框对应于数据库中“产品”和“供应商”表的列,与查询一样,您可以选择包含的列。每个框都可以排序和过滤,就像它存在于一个表中一样。图 12-14 显示了在 ProductName = 'Boats '上过滤的图 12-13 中的表单。
图 12-14。
A form combining the data from the Products and Suppliers tables of the Cards for Everyone Inc. database filtered on ProductName = ‘Boats’
然后,您可以直接从表单中确定船只的供应商,这是以前的最爱。
多个表的搜索技术总结
跨多个表进行搜索需要一种将数据集中在一起的方法。最常用的技术是连接查询和表单,其中的选择很大程度上取决于个人偏好。一旦可以在单一位置查看数据,就可以使用排序和过滤直接找到所需的项目。
如前所述,本节假设您已经获得了关于您正在寻找的数据的完整信息。本章后面关于部分数据的部分将考虑不属于这种情况的情况。
基于几个标准的搜索
您可以同时对同一个数据库列应用多个筛选器。例如,如果您正在查找一个链接到 Connecting South Side 的组织,并且您知道该名称包含单词“Yoga”和“Center ”,但是您不确定确切的名称,您可以对 Organizations 表中的 OrganizationName 列应用两个过滤器(图 12-15 ,如下所示:
-
Apply one filter to the OrganizationName that contains the word “Center,” giving you the output shown in Figure 12-16.
图 12-16。
The OrganizationName column of the Organizations table filtered for the word “center”
-
如果第一个过滤器返回了很多行,那么对 OrganizationName 应用第二个过滤器,使用单词“Yoga”。
图 12-15。
The first few columns of the Organizations table from Connecting South Side
无论是在同一个表中,还是在查询或窗体的多个表中,都可以对同一列应用多个筛选器,也可以同时对多个列应用筛选器。例如,如果要在 Cards for Everyone Inc .数据库的 Customers 表中查找 Lisa Garcia,可以同时应用两个筛选器:LastName = 'Garcia '和 FirstName = 'Lisa '。
基于部分列值进行搜索
您在前面几节中对 Garcia 的搜索可能没有成功。可能是 Lisa 的姓氏输入不正确,这是在数据清理过程中被忽略的错误。Lisa 的姓氏可能根本没有输入,也可能 Lisa 不是现有客户。
在放弃寻找之前,你还有其他的选择。过滤器可以搜索部分数据。以下是一些筛选器搜索与 Garcia 这个名字相关的部分数据的示例:
- 搜索名称的开头,使用“以 G 开头”、“以 Ga 开头”、“以 Gar 开头”等等。
- 使用“以 a 结尾”、“以 ia 结尾”、“以 cia 结尾”等搜索名称的结尾。
- 使用“包含 ar”、“包含 arc”、“包含 arci”等搜索名称的中间(或两端)。
如果 Garcia 被拼错为 Garica,那么下面的过滤器将会选择它,尽管有些过滤器会返回比其他过滤器更多的行:
- 以 G 开头,“以 Ga 开头”和“以 Gar 开头”
- 以'结尾
- 包含 ar '(以及 G,Ga,Gar,a,r,I)
建议找到名称中不常见的特征,以便过滤器返回的行数尽可能少。
下列过滤器在 Garica 的情况下不会成功:
- “以加西亚开头”或“以加西亚开头”
- 以 ia 结尾'(以及 cia、rcia、arcia)
- “包含弧”或“包含弧”
搜索过程可能是重复的,需要反复试验:不要期望马上得到你要找的数据。根据命中次数和结果的相关性,根据需要修改您的搜索。
这些类型的搜索可能很耗时,而且可能不会有任何结果。例如,如果 Lisa 的姓氏没有输入到数据库中,您将搜索不存在的东西。考虑到这一点,您可能希望过滤其他列,以获得正确的数据。您可以按如下方式对其他列进行筛选:
- 名字等于“丽莎”
- 性别等于“女性”(如果你知道丽莎是女性)
- State 包含“MI”(如果您知道 Lisa 住在密歇根州)
- InvoiceDate 等于“上个月”(如果您知道 Lisa 之前的订单是上个月)
每次应用额外的筛选器时,返回的行数将与以前相同或更少。数量越少,就越容易识别 Lisa 的记录(假设它存在)。
可能会有这样一个时刻,当你尽了一切合理的努力去寻找 Lisa 的详细信息时,你需要停下来总结 Lisa 是一个新客户。
您可以通过在某些表格中添加关键字来提高搜索效率。例如,如果 Pat at Cards for Everyone Inc .面临非常模糊的搜索标准,例如“所有上面有动物的卡片”,那么搜索所有卡片以查看它们是否符合这一要求将是没有效率的。更有效的方法是在 Products 表中添加一个 keywords 列,其中的关键字反映了卡片上的图片,例如猫和兔子代表动物,玫瑰代表花。图 12-17 中显示了人人卡公司数据库的产品表示例。
图 12-17。
Adding a Keywords column to the Products table of the Cards for Everyone Inc. database
有了关键字,你可以使用一个过滤器,比如关键字包含“动物”来识别动物卡片。图 12-18 显示了产品表中的过滤结果。
图 12-18。
The Keywords column in the Products table for the Cards for Everyone Inc. database filtered on Keywords Contains ‘Animals’
个案研究
以下部分给出了您可以在属于第 2–4 章中描述的每个小型企业的数据库上运行的搜索示例。
智能手推车公司。
智能手推车公司的数据由客户、材料、产品和供应商组成。其数据库设计已在第七章的中介绍过,图 12-19 中再次显示,以供参考。
图 12-19。
Overview of the complete database design for Smart Wheelbarrows Inc
潜在搜索的数量很大,而且多种多样。这里有几个例子:
- 某个组件或材料存在缺陷,需要确定其供应商—需要进行搜索以将该组件或材料与其供应商相匹配,从而解决问题。在涵盖跨多个表的搜索的部分中,您看到了一个示例,其中 Cards for Everyone Inc .数据库中的 Products 和 Suppliers 表是使用联接查询或表单合并的。在这种情况下,两种方法都可以使用。
- 为了满足质量审核的要求,第五章讨论了 Smart 独轮车公司开发儿童独轮车的可能性。为了开发这样一种产品,很可能需要进行质量审核,将每个组件追溯到其来源,以确保儿童使用安全。这种审计将涉及确定拟议产品的每一个组成部分,并将它们与供应商联系起来。在相关材料清单的帮助下,这可以通过与单个组件相同的方式完成。
- 确定客户以前是否从该企业购买过产品—这应该是一个简单的搜索(如果客户的姓名输入正确),或者如果有输入错误,可能是一个漫长的过程。按照本章所述的步骤,在 Cards for Everyone Inc .数据库中找到 Lisa Garcia。如果所有这些寻找客户的尝试都一无所获,很可能你有了一个新客户。
- 识别不支付账单的客户—许多小企业都受到不支付账单的客户的影响。搜索以识别未支付的发票和负责的客户可能是有用的。这是一个搜索示例,目前无法使用 Smart 独轮车公司的数据库进行搜索,因为 CustomerInvoices 表中没有保存发票何时支付的数据的列。但是,这是一个简单的添加—该列可以称为 DatePaid,数据类型为 Date/Time。
一旦 date payed 列就绪,就可以使用连接查询或表单连接 Customers 和 CustomerInvoices 表(请参阅基于多个表的搜索一节),并且可以过滤 date payed 列中的空值。出现在这个过滤的查询或表单上的客户还没有支付他们的账单(假设数据库已经保持最新)。
詹宁斯-哈佛法律事务所有限公司。
Jennings-Havard 法律事务所的数据包括客户、案例和人口统计数据。在第七章的中介绍过的整个数据库设计再次显示在图 12-20 中,以供参考。
图 12-20。
Overview of the database design for Jennings-Havard Law Offices
以下搜索会很有用:
- 识别某人是新客户还是现有客户——如前几节所述的 Smart 独轮车公司和 Lisa Garcia。
- 识别回头客——客户忠诚度对任何企业都很重要,尤其是像 Jennings-Havard 律师事务所这样的律师事务所,他们可能会留住客户很多年。
查找重复客户的一种方法是在客户和客户联系人之间建立一个连接查询,从客户联系人表中选择 ClientID 列,从客户表中选择 FirstName 和 LastName,如图 12-21 所示。这个查询将客户的名字与他们的每个联系人放在一起,使他们能够被计数。运行查询后,显示图 12-22 中的表格。你可以看到金珠已经联系了公司两次。
图 12-22。
Query showing repeat clients for Jennings-Havard Law Offices
图 12-21。
Query design for repeat clients of Jennings-Havard Law Offices
连接南侧
Connecting South Side 保存关于他们的查询者、查询者被指引到的组织以及关于查询者的人口统计细节的数据。在第七章的中介绍过的整个数据库设计再次显示在图 12-23 中,以供参考。
图 12-23。
Database design for Connecting South Side
下面的搜索会很有用。
- 确定询问者之前是否联系过 Connecting South Side 与 Lisa Garcia 的流程相同。
- 识别与当前问题类似的询问者—识别与当前问题类似的客户可能有助于避免重复工作,尤其是在最近一段时间。包含每个案例说明的列在案例表中被标注为 AboutContact。如果跨查询者和案例表创建了连接查询或表单,并且针对可能提供关联的单词和短语过滤了 NotesAboutContact 列,则可能会显示相关的案例。
例如,如果一个查询者联系了 Connecting South Side 关于糖尿病和酒精消费的帮助,可以在 NotesAboutContact 列上使用诸如糖尿病、酒精等词进行搜索。幸运的话,这将识别出最近的一个案例,在这个案例中,一个询问者已经被指示在这种情况下寻求帮助,而新的研究将是不必要的。
摘要
不同类型的数据库搜索的数量是巨大的。在这一章中,我们考虑了在一个表中的那些,跨多个表的那些,以及涉及多个标准的那些。搜索可以基于完整或部分数据。搜索数据的过程经常是重复的。本章介绍了许多可用于搜索的工具,有了经验,您将能够有效地应用它们。
十三、分析您的数据
你不能按下一个按钮就指望所有的数据分析都自动进行。数据分析涉及对数据元素或结构的详细检查,是业务决策的基础。
以下部分介绍了数据分析技术,并描述了应用这些技术的最佳环境。即使是公认的数据分析技术也可能被错误地应用,知道要寻找什么陷阱是很重要的。
您必须选择技术来满足给定数据集的要求和您的小型企业的目标。如果您刚刚开始,尝试几种技术来感受它们是如何工作的可能是个好主意。制作数据库的副本或组装一个简单的测试数据库是明智的。这里考虑的工具可以在数据库包或电子表格中找到。
概观
数据分析可以分为两种主要类型——探索性和验证性。探索性数据分析包括应用给你数据“感觉”的技术,使你对可能发生的事情产生预感(或假设)。例如,你可能会有这样的印象,对某个营销活动反应良好的女性多于男性。验证性数据分析测试直觉,并以特定的准确度产生估计值。
在统计学中,区分了:
- 一个数据样本,从中可以预测总体的详细信息
- 假设为总体的数据
在本章中,除非另有说明,否则假设您已经获得了所有感兴趣的数据。关于使用样本的细节可以从本章末尾列出的进一步阅读材料中获得。
数据类型
数据分析应该总是从评估数据的特征开始。如您所见,数据并不完全相同,您必须仔细进行分析,即使测量结果看起来非常简单。在这一章中,我们将考虑三种类型的数据,每一种都向其前身添加了更多的属性:
- 名义上的
- 序数
- 比例
Note
定义测量级别的传统尺度是名义、顺序、间隔和比率。区间数据和比率数据的区别在于比率数据包含一个有意义且非任意的零。
标称数据
名义数据包括由简单命名系统区分的项目,例如 Cards for Everyone Inc .数据库中的卡片类别、customer 表的 address 列中的州名列表以及 Smart 独轮车公司数据库中的部件名称。每一项都不与其他任何一项重叠。为了简化收集和参考,标称项目可能会分配有编号,例如 1 =蓝色,2 =红色,3 =黄色。这些数字没有任何数学意义,因此不能相加。
序数数据
序数数据有一个自然的顺序,因此得名。这种数据经常用于要求人们表明其偏好的调查中。它们还被用来表示企业中的工资级别和其他许多方面。这些项目的顺序通常是通过给它们分配数字来表示它们的相对位置来定义的。也可以适当地使用字母或其他顺序符号。和标称数一样,你不能对序数进行算术运算:它们只显示顺序。此外,间隔序数不能进行比较。例如,在一个五分制的问题量表中,四和五之间的差异不能与二和三之间的差异相比较。
比率数据
在比例上,数字可以相加。倍数也可以比较。例如,一种产品可能比另一种产品贵一倍,因为价格是一个比率数字。
比率数据可以分为连续型和离散型。连续数据是沿着可以分成分数的连续尺度测量的,例如高度。连续数据允许无限精细的细分。
离散数据是通过一组固定值来衡量的,例如以年为单位的年龄。
频数分布
在第十章中介绍的频率分布对于显示数据的“形状”很有用,也就是说,数据值是如何分布的。频率是某件事情发生的频率。例如,在给定的一周中,每个人的卡公司可能在星期六上午销售一张卡,在星期六下午销售一张,在星期三上午销售一张。频率是周六两个,周三一个,全周三个。希望这不是正常销售的指标!频率分布可以应用于上一节中探索的每种类型的数据,如下一节所示。
离散比率数据
通过计算频率,我们可以制作一个频率分布表。例如,假设 Cards for Everyone Inc .的每个客户每月的卡销售额如下:
2, 3, 1, 2, 1, 3, 2, 3, 4, 5, 4, 2, 2, 3
相应的频率分布如表 13-1 所示。
表 13-1。
Example of a Frequency Distribution for Cards for Everyone Inc.
| 每位顾客每月的卡销售额 | 频率 | | --- | --- | | one | Two | | Two | five | | three | four | | four | Two | | five | one |从表 13-1 中,我们可以看到一些有趣的事情,例如:
- 顾客每月购买两张卡是最常见的情况
- 只有一次顾客在一个月内买了五张卡
接下来是 Cards for Everyone Inc .的一个例子,一些客户下了更大的订单:
2, 8, 2, 5, 1, 6, 9, 3, 11, 5, 4, 12, 3, 15
为了避免 15 行的冗长表格,这些值被分成三组,如表 13-2 所示。
表 13-2。
Example of a Frequency Distribution with Grouped Values for Cards for Everyone Inc.
| 每位顾客每月的卡销售额 | 频率 | | --- | --- | | 1 – 3 | five | | 4 – 6 | four | | 7 – 9 | Two | | 10 – 12 | Two | | 13 – 15 | one |一般来说,间隔的数量应该限制在大约 8 到 10。标签应该清晰,不能重叠。例如,如果您有 10-12 和 12-14,您将不知道将每月购买 12 张卡的客户放在哪里。
名义数据和顺序数据
标称和序数数据可以用频率分布来表示,如表 13-1 所示。然而,如表 13-2 所示,对名义数据和顺序数据进行分组是不正确的,因为它们之间没有数学关系。
表 13-3 显示了 Everyone Inc .卡产品表中卡类别的频率分布。即使频率为零,也应包括所有类别。
表 13-3。
Frequency Distribution for the Card Category in the Products Table of Cards for Everyone Inc.
| 卡的类别 | 频率 | | --- | --- | | 生日 | Two | | 新生婴儿 | one | | 谢谢你 | one | | 情人 | one |连续比率数据
将连续的比率数据表示为频率分布中的单个值既不容易也不准确。这是因为值之间的间隔可能非常小(可能无限小)。例如,价格的值可以用一美分来分隔,一个详细列出所有可能的美分值的频率的表将是巨大而无用的。因此,连续数据表示为间隔,例如5, 10, etc. Such intervals must be written so that there is no ambiguity as to where any of the prices belong. For example, 0 < Price ≤ $5 interval. Table 13-4 显示了 Cards for Everyone Inc .数据库的产品表中价格的频率分布。
表 13-4。
Example of a Frequency Distribution for Price Taken from the Products Table for Cards for Everyone Inc.
| 价格 | 频率 | | --- | --- | | 0 | Zero | | 1 | one | | 2 | Two | | 3 | Zero | | 4 | Two |图表
创建频率分布表后,您可以构建条形图或饼图。
条形图
条形图是最常用的图表类型之一。它们用于显示和比较标称数据、序数数据、离散比率数据和分组连续比率数据的频率或其他度量。不同条形的高度与它们所代表的数据项的大小成比例。因为水平轴代表不同的类别,所以它没有刻度。垂直轴的刻度是测量单位。也可以水平绘制条形,当类别名称很长时,这对于名义数据特别有用。图 13-1 显示了表 13-3 中所列数据的横条图。MS Excel 等电子表格将直接从频率分布表中生成条形图。
图 13-1。
Horizontal bar chart for the Categories column in Cards for Everyone Inc.’s Products table
饼图
饼图用于可视化名义数据。它们也可用于顺序数据、离散比率数据和分组连续比率数据,尽管这种情况不太常见。它们显示了总数据在不同类别之间的分布情况,是将部分与整体联系起来的有效方法。当类别数量较少时,它们工作得最好。饼图的每个部分反映了每个类别占整个数据集的比例。零件通常按尺寸降序排列。
图 13-2 中的示例显示了与上表 13-3 中所示的人人卡公司的卡类别的频率分布相对应的饼图。因为有两张生日类别的卡片,所以这些卡片被分配了一块比其他卡片大一倍的饼。MS Excel 等电子表格将直接从频率分布表中生成饼图。
图 13-2。
Pie chart for the Categories column in Cards for Everyone Inc.’s Products table
直方图
直方图是条形图的一种特殊形式,其中的数据代表连续的比率数据。软件包通常会为您划分数据,而无需您构建频率分布。例如,Excel 2013 将输入数据列表和用户定义的条块列表作为直方图命令的输入。然后,它将数据放入这些箱中,并生成频率分布和直方图。图 13-3 显示了与上表 13-4 中的数据相对应的输入数据和 bin。Bin 2 对应于 1 <价格≤ $2,因此直方图上的“条”代表该区间。与条形图不同,在直方图中,两个轴都有刻度。这意味着条形的面积与所代表的量的大小成正比,而不仅仅是它的高度。
图 13-3。
Histogram for the data shown in Table 13-4 Note
要在 MS Excel 2013 中构建直方图,您需要安装软件附带的分析工具库。
描述统计学
描述性统计有助于总结您的数据。在接下来的章节中,将会考虑平均值和扩散的测量。
集中趋势测量
集中趋势或平均值的度量是有用的,因为它们可以用一个数字概括许多数据。例如,Cards for Everyone Inc .可能会发现,平均而言,每个客户每次交易都会购买两张卡。不可能每个顾客每次交易都恰好买两张卡;有的会多买,有的会少买。然而,每笔交易两张卡的数字是一个很好的指标,表明了总体的卡购买量。
平均值有三种不同的定义,即均值、中值和众数。每一项都是用不同的方法计算的,当应用于同一组数据时,通常会产生不同的值。
选择使用哪个定义部分取决于数据的类型。理解每个统计数据告诉你什么是非常重要的,这样你就可以做出最适合你正在进行的分析的明智选择。
这人
默认情况下,人们在日常语言中谈论平均值时通常指的是平均值。一组数据项的平均值计算如下
Adding all the data items. Dividing this total by the number of data items.
当数据项分布相对均匀,没有特别高或特别低的值时,最好使用平均值。此外,对于名义数据或顺序数据,平均值不是适当的平均值,因为不可能对这些数据进行数学运算。平均值可应用于离散比率数据,尽管结果需要四舍五入到最接近的整数。
如果一组数据项包含少量相对较高或较低的值,则作为一个整体,平均值将不是数据项的典型值,因为这些非典型值将对平均值有相对较强的影响。
在第十章中,以下示例用于定义异常值。数字序列显示了卡为每个人公司的每个客户的每月卡销售额:
2, 4, 9, 5, 10, 2, 7, 6, 8, 3, 104
平均值= 160/11 = 14.55(或最接近卡片的 15)。这个平均数不能很好地反映数字的顺序,因为除了一个以外,所有的数字都较低。最后一个数字异常高,对计算有不成比例的影响。
Note
在 MS Access 中,使用Avg
命令计算平均值。
中间值
计算一组有序数据的平均值的最合适的方法是使用中位数或众数。中值是指一组数据中的中间值,这些值按大小从最小到最大的顺序排列,反之亦然。当数据集中有奇数个值时,中间值很容易找到。当有偶数个值时,两个中心值之间的中点就是中间值。
当数据包含相对较高或较低的值时,中位数是衡量比率数据平均值的好方法,因为这些值对结果有相同的影响,这与平均值不同。
例如,上一节中用于显示 Cards for Everyone Inc .每个客户每月卡销售额的数字序列为:
2, 4, 9, 5, 10, 2, 7, 6, 8, 3, 104
平均值为 15。相比之下,可以通过首先对序列进行排序(此处为升序)来找到中值:
2, 2, 3, 4, 5, 6, 7, 8, 9, 10, 104
因为有 11 个数字,所以中位数在第六位,也就是数字 6。请注意,6 的中值比 15 的平均值更能代表序列的中心。
模式
与平均值和中值不同,该模式可应用于名义数据。它还可以应用于顺序数据和比率数据(离散数据和分组连续数据)。众数是在一组数据中出现频率最高的值。因为它是最常见的值,所以它具有代表性或典型性。如果几个值同样常见,则一组数据中可能有一个以上的模式。在表 13-3 所示的 Everyone Inc .的卡类别的频率分布中,模式(或模式类)是生日,因为该类别出现的频率最高。
传播的量度
分布的度量用于描述一组数据的可变性。目的是提供一个概念,说明所选的集中趋势度量(平均值、中值或众数)代表数据的程度。如果数据集中的值的分布很大,则集中趋势的度量不像数据的分布很小时那样具有代表性。这是因为较大的分布表明各个数据项之间可能存在较大的差异。
范围
范围是一组数据中最高值和最低值之间的差值,适用于顺序数据以及离散和连续比率数据。例如,上一节中用于显示 Cards for Everyone Inc .每个客户每月卡销售额的数字序列为:
2, 4, 9, 5, 10, 2, 7, 6, 8, 3, 104
最大值是 104,最小值是 2。这导致范围为 104 - 2 = 102。虽然使用范围作为分布的度量是有限的,但它确实设置了数据项的值的边界。
四分位数和四分位数间距
四分位数通过将一组数据分成四份来告诉我们它的分布情况,就像中位数将它分成两半一样。四分位数是有序数据的最佳分布度量,也是离散比率数据的有用分布度量。
例如,上一节中用于显示 Cards for Everyone Inc .每个客户每月卡销售额的数字序列为:
2, 4, 9, 5, 10, 2, 7, 6, 8, 3, 104
按升序排列,至于中位数,这是:
2, 2, 3, 4, 5, 6, 7, 8, 9, 10, 104
四分位数如下:
- 第一个四分位数(Q1)是标记序列中四分之一路径的数据项。在本例中,这是第三个数据项 3。
- 第二个四分位数(Q2)是标记序列中间位置(中位数)的数据项。在本例中,它是第六个数据项 6。
- 第三个四分位数(Q3)是标记序列中四分之三部分的数据项。在本例中,这是第九个数据项 9。
对于偶数个数据项,四分位数的计算方法是取每个四分位数周围两个数据项的和,然后将它们减半。
表示四分位数的一种常见方式是四分位数间距。四分位数范围描述了第三个四分位数(Q3)和第一个四分位数(Q1)之间的差异,告诉我们分布中数据项的中间一半的范围。因此,在前面的例子中,四分位数间距= Q3 - Q1 = 9 - 3 = 6
方差和标准差
对于比率数据,分布的度量是方差或标准差。
差异的计算方法如下:
Adding the squared differences between each data item and the mean. Dividing by the total number of data items.
对差异求平方会移除负值,并对远离平均值的值给予不成比例的权重。因此,如果数据集中的值分散开,方差将是一个很大的数字。相反,如果分数接近平均值,方差将是一个较小的数字。但是,方差的单位与数据集中的值不同,这意味着很难解释它的值。
计算标准偏差(取方差的平方根)提供了一个与所考虑的数据集具有相同单位的结果。尽管如此,分析方差在一些统计分析中是极其重要的,这将在本章末尾的进一步阅读中讨论。
Note
MS Access 提供了计算方差(Var
)和总体标准差(STDEV.P
)的函数。
交叉列表和分段
交叉制表有助于您理解两列或多列数据之间的关系。例如,假设 Cards for Everyone Inc .的经理 Pat 想回答这样一个问题:“男性和女性再次购买的意愿有什么不同吗?”假设已经进行了一项调查,询问参与者是否会再次从该企业购买(y 或 n)以及他们的性别(m 或 f),可以设置一个查询,如图 13-4 所示。输出如图 13-5 所示。
图 13-5。
Query output for a cross-tabulation between Intent and Gender for Cards for Everyone Inc.
图 13-4。
Query design for a cross-tabulation between Intent and Gender for Cards for Everyone Inc.
在图 13-5 中,您可以看到 10 名女性做出了积极回应,而男性只有 5 名。
分割数据(在第十二章中讨论)和应用数据分析工具的潜力非常大,例如前面章节中讨论的工具。两个例子是比较不同州和不同年龄组的卡片销售情况。Cards for Everyone Inc .可以根据购买频率进行细分,并奖励忠诚的购物者。
文本分析
在调查中,通常会有一些开放式问题,让受访者填写自己的答案。当样本较大时,很难分析每个回答者的答案。如果你有文本数据,那么有一个文本分析工具是很有帮助的。顶级工具并不便宜(如 NVivo),但通常一个词云会提供一些有用的信息。一个特别著名的工具是 Wordle.net。例如,假设 Cards for Everyone Inc .向其调查对象提出了一个开放式问题,如“您还有其他反馈吗?”并收到了以下五份答复:
快速服务
卡片不错,质量很好
良好的响应时间,非常快
高质量的卡片
友好、高效的服务
相应的输出如图 13-6 所示。
图 13-6。
Output from wordle.net for the Cards for Everyone Inc. survey
对每个词的强调是基于它在调查中的出现和位置。试用这样的软件包将有助于你有效地分析你的文本。
相关性和散点图
当您想要了解两列连续比率数据之间的关系时,可以使用相关性。例如,Cards for Everyone Inc .可能想知道名为“Paris by Moonlight”的卡的销售与其价格变化之间的关系,因为他们怀疑他们一直在以相当低的价格出售该卡,并想知道提高其价格对销售的潜在影响。
- 如果相关性为 1,则卡的价格与其销量完全正相关,同涨同跌。
- 如果相关性为 0,则这两个变量之间没有相关性。
- 如果相关性为-1,则卡的价格和销售额完全负相关,这意味着一个卡的价值越高,另一个卡的价值越低。
如果相关性的绝对值大于 0.5,变量之间的相关性通常被认为是“显著的”,这意味着观察到的相关性不太可能是偶然发生的。
Note
根据给定的概率对相关数据进行精确的显著性检验是很简单的。请参阅本章末尾的参考资料,以便进一步阅读。
假设 Cards for Everyone Inc .从 2015 年 4 月 6 日开始每周记录“巴黎月光”卡的价格和相应销售水平的微小变化。以下示例提供了两种可能的结果。图 13-7 显示了《月光下的巴黎》价格的逐渐上涨和销量的逐渐下降。
图 13-7。
Example of a high negative correlation between Price and Sales from Cards for Everyone Inc. Note
价格是独立的列;sales 是因变量,因为它依赖于 price 的值。
通过使用 MS Excel 中的CORREL
函数获得的相关性(本例中为=CORREL (A2:A12,B2:B12)
)给出了非常高的负相关性-0.97,如图 13-7 的单元格 A:13 所示。这种相关性表明,即使价格小幅上涨也会对销售产生负面影响,对利润的影响也应仔细考虑。
另一方面,图 13-8 所示的示例显示单元格 A:13 中的相关性非常低,为 0.14。这表明几乎没有证据表明价格上涨会导致需求下降。然而,由于这种相关性低于 0.5,在做出任何确定的结论之前,还需要进行更多的调查。
图 13-8。
Example of a low positive correlation between Price and Sales from Cards for Everyone Inc.
你应该小心使用相关性。相关性计算仅适用于遵循直线的关系。因此,相关性最好用散点图来表示。散点图在第十章中介绍,用于显示来自同一对象或个人的成对比率数据之间的关系。一个点代表每一个人或每一个对象(在本例中为卡片),它是根据两个轴(在本例中为价格和销售额)上的度量来定位的。
通过分析构成散点图的点的模式,您可以直观地看到两组测量值之间是否存在相关性计算所指示的关系,或者点的线是否是非线性的,从而使相关性计算变得不可靠。此外,相关性并不意味着一件事导致另一件事(可能有其他原因导致数据具有良好的相关性)。
线性回归
回归是测试列之间关系的一种比相关更准确的方法,用于预测未来值。例如,在销售“月光下的巴黎”卡的情况下,在实际观察到卡的价格变化之前,可以使用回归来预测卡的销售,从而避免潜在的低销售期。
价格并不是影响《月光下的巴黎》销量的唯一因素——一年中的时间、经济状况等等。,可能也有关系。然而,如果我们有兴趣预测未来一小段距离(即轻微的价格上涨),那么几乎所有的非线性函数都可以用一条直线来近似。
当在回归中使用一个独立的列时,它被称为简单回归;当使用两个或多个独立的列时,称为多元回归。线性模型假设列之间的关系是直线关系。
要实现预测,首先要像上一节一样在散点图上绘制数据。独立列和从属列之间的理想相关性介于 0.5 和 0.99 之间,或者介于 0.99 和 0.5 之间。我们的相关性是-0.97。
为了做出这些预测,必须从散点图中出现的数据绘制一条回归线。图 13-9 与上面图 13-7 所示的散点图相同,增加了一条拟合数据的回归线。
图 13-9。
A regression line fitted to the data in Figure 13-7 covering price and sales from Cards for Everyone Inc.
从图 13-9 中,你可以看到,如果价格提高到 3.25 美元,预期的销售价值大约是 60 张卡片。
回归线是其自身与散点图上每个数据点之间距离最小的线。数据点到回归线的距离称为残差。寻找最佳拟合线(即最小化所有残差大小的线)的典型过程称为最小二乘法。
这种计算通常使用计算机软件进行。例如,可以使用趋势线工具在 MS Excel 2013 中直接在散点图上绘制回归线。回归线几乎总是包含误差项,因为现实世界并不完美。
以下假设是在线性回归中做出的。如果您的数据不符合这些条件,您可能需要考虑一个更复杂的模型:
- 这两列之间的关系是线性的
- 回归线周围的方差对于垂直轴上的所有值都是相同的(在本例中为 Sales)
- 你的每一个观察都是相互独立的(这里,给定价格下一天的销售数量不应该取决于以前的结果)
- 残差不应该显示模式,如果存在模式,则表明两列(在本例中为价格和销售额)之间的关系不是线性的,需要更复杂的回归形式
- 残差应该与一个模态类合理对称(即,它们遵循正态分布)
验证性数据分析
验证性数据分析使用传统的统计推断工具来评估探索性分析的观察结果在多大程度上是偶然发生的。目的是从总体人口的随机数据样本中得出结论。使用的两种方法的例子是:
- 置信区间—估计汇总统计的精确度,如平均值、标准偏差等。例如,95%的置信区间保证了在 95%的时间内摘要统计的真实值将被包括在内。
- 假设检验——评估数据组之间的差异(如平均值、方差等)。)是偶然发生的或统计上显著的结果(即真正的差异)。推论的过程从一个中立的立场开始——通常被称为“零假设”——这个立场一般被设定为“没有区别”。
关于验证性分析的细节,请参考本章末尾提供的进一步阅读材料。
摘要
在任何数据分析练习中,重要的是从评估数据的特征开始。考虑到这一点,表 13-5 列出了本章中描述的每一种技术及其适用的数据类型。
表 13-5。
Summary of Data Analysis Techniques and the Types of Data They Can Be Applied To
| 技术 | 数据类型 | | --- | --- | | 图表 | | | 条形图 | 名义数据、顺序数据、离散比率数据和分组连续比率数据 | | 圆形分格统计图表 | 名义数据、顺序数据、离散比率数据和分组连续比率数据 | | 柱状图 | 连续比率数据 | | 集中趋势测量 | | | 平均 | 连续比率数据 | | 中位数 | 序数数据和比率数据 | | 方式 | 名义数据、顺序数据、离散比率数据和分组连续比率数据 | | 传播的量度 | | | 范围 | 名义数据、序数数据和比率数据 | | 四分位数和四分位数间距 | 有序和离散比率数据 | | 方差和标准差 | 连续比率数据 | | 交叉列表和分段 | 名义数据、顺序数据、离散比率数据和分组连续比率数据 | | 文本分析 | 文本 | | 相互关系 | 连续比率数据 | | 线性回归 | 连续比率数据 |进一步阅读
《商业和经济统计》,作者:保罗·纽博尔德、威廉·卡尔森和贝蒂·索恩,培生教育公司;第八版,平装本,2012,ISBN-13: 978-0273767060。
十四、报告您的小型企业数据分析
小型企业定期向内部决策者、外部顾问、融资机构、会计师和许多其他人报告数据分析的结果。数据库报告包含对决策有用的信息,这些信息应该与业务目标直接相关。
报告的性质在很大程度上取决于分析的目的以及分析结果所针对的受众。分析结果往往被用来做出决策,例如:
- 重复分析,但进行修改
- 一起执行另一个分析
- 影响你的小企业的杠杆
Note
目标、杠杆和指标包含在第五章中。
该报告应提供足够的细节,以便能够从同一组数据中重复得出结果。
写作风格
写作风格应该尽可能的直截了当,这样读者就可以专注于分析而不会分心。一方面,非常正式或华丽的语言最好避免。另一方面,过度放松或非常简短的语言也是不合适的。此外,语法和拼写错误会偏离报告的主线,所以要注意改正。还应避免使用高度技术性的语言。
在报告中,整数通常被写成数字,而不是在文本中拼写出来。例如,“人人卡公司今年有 85 种新型卡”,而“人人卡公司今年有 85 种新型卡”数字应该保持简单,这可能意味着:
- 在不需要确切数字的情况下,四舍五入以避免使用小数位;例如,2 而不是 1.99
- 用文字说明单位(例如,400 万美元而不是 4,000,000 美元)
文本和图表之间应该有一个良好的平衡,因为有些读者对图像的反应更好,而有些读者对文本的反应更好。一个好的平衡会适合每个人。
你报告的结构
请记住,您要向其汇报的人员和组织可能有不同于此处建议的要求。然而,这些基本要素应包含在大多数报告中:
Introduction Body Conclusion(s)/Discussion Appendix/Appendices
导言
简介应包括以下信息,按照给定的顺序排列:
- 分析和数据的简要概述,以及任何相关的背景问题
- 数据分析提出的主要问题和结论摘要
- 这些问题的答案和下一步行动的总结
- 报告其余部分的简要概述
报告您没有预料到的发现是合理的,否则这些发现被称为次要发现。然而,你要回答的问题应该优先考虑。
报告的正文
报告的正文可以用不同的方式来理解。
它可以分为几个部分,与导言的级别相同,标题如下:
- 方法
- 分析
- 结果
或者,报告的主体可以形成一个单独的部分,有时称为“分析”,用一个小节来回答导言中提出的每个问题。在每个小节中,对每个问题进行了分析,并给出了结论。
数据和方法
一份报告应该以这样一种方式来写,让阅读它的人清楚地知道你从哪里开始。你还应该报告分析的时间尺度。
对分析中使用的数据给出清晰的细节是有帮助的。例如,同意参与调查的客户可能在重要方面与选择不参与的客户不同。例如:
- 他们可能过着有更多空闲时间的生活方式(可能偏向退休人员)
- 那些参与者可能处于满意度的两端——要么对产品非常满意,要么非常不满意
这两种情况都可能导致结果的偏差。
此外,最好描述用于分析数据的软件,因为不同的包之间的结果可能略有不同。
结果
结果部分应该简明扼要。避免证明这些发现——这留给讨论部分。结构使信息更容易吸收,并可以采取多种形式。例如,可以从最一般到最具体,或者从最重要到最不重要来呈现结果。
你应该从你的分析中提供证据(例如通过使用表格或图表)来支持每一个观点,尽管详细的证据以及其他额外的材料最好放在附录中。
开始结果部分的一个好方法是使用一个表格,用数字汇总基础数据。这样的表格为读者提供了一个清晰的数据概念,以及如何与更广泛的人群进行比较。这通常是报表中的第一个表。表 14-2 说明了表 14-1 中所列数据的潜在汇总表,该表由第一章重述而来。
表 14-2。
Summary Products Table
| 列标题 | 范围 | 平均 | | --- | --- | --- | | 价格(美元) | 2.00 ≤价格≤ 5.00 | Three point four | | 可用数量 | 5 ≤可用数量≤ 11 | nine |表 14-1。
Basic Product Table from Chapter 1
| 产品 ID | 供应商 ID | 产品名称 | 种类 | 价格(美元) | 可用数量 | | --- | --- | --- | --- | --- | --- | | Eleven | One hundred | 猫 | 生日 | Two | five | | Twenty | Two hundred | 玫瑰 | 谢谢你 | Three | eight | | Twenty-three | Two hundred | 船 | 生日 | Two point five | Ten | | forty-two | Three hundred | 心 | 情人 | Four point five | nine | | Sixty-one | Three hundred | 兔子 | 新生婴儿 | Five | Eleven |Note
在表 14-1 中,可用数量四舍五入到最接近的整数。
这一节的措辞必须附有高质量的图表,以便读者能容易地理解论点。有关表格和图形的更多信息,请参见本章的最后一节。
如果您的业务目标起草得很仔细,您的数据库是根据这些目标设计的,并且您的数据收集得很有效、很干净,那么您的分析应该会提供可靠的结果。
讨论
你分析的目的是产生可以考虑和采取行动的结果。讨论部分不是一个你可以放入所有你在报告的前三个部分放不下的信息的地方。如果你已经以清晰的方式陈述了你的方法和结果,讨论部分可以让你以一种读者可以自己拿主意的方式陈述结果。
首先讨论主要分析的含义。在分析过程中得出的任何结果都可以在以后提及,以免转移对业务目标的关注。此外,你应该提及数据收集、分析或解释的任何缺点或优点。将这些问题公之于众为你提供了一个为它们辩护和/或推荐克服它们的方法的机会。
该报告应包括与结果相关的不确定性的讨论。这种不确定性可能以多种方式出现,向读者展示这些不确定性可以确保你已经考虑到了分析的局限性。可能出现的不确定性类型有:
- 由于无法解释数据中所有潜在的变异来源而导致的不确定性
- 数据收集、编码和分析过程中可能出现的未知错误导致的不确定性
- 不确定性:数据中的发现与分析时一样
当出现这些或任何其他不确定性时,提供讨论是有用的。
结论
将你的结论限制在你的分析所支持的范围内。重要的注意事项如下:
- 对积极和消极的发现给予同等的关注。
- 根据事实和逻辑得出你的结论。
- 做因果联系和关联的时候要小心。例如,正如在第十三章中提到的,数据库表中两列之间的相关性并不意味着一个导致另一个。
表格和图表
呈现数字数据有三种主要方法:
- 将它融入正文中
- 在表格中单独呈现
- 构建一个图表
确定哪种方法是最好的取决于您要处理的数据量及其复杂性。相关的文字应该描述数据揭示的主题,但不应该重复图表中描述的内容。
当只有两个数值需要比较时,数字最好作为文本的一部分呈现。例如:
Cards for Everyone Inc 的女性顾客定期购买贺卡,而男性顾客的比例为 62%
如果你在讨论三个或更多的数字,用表格往往更合适。表格是展示数据的有效方式:
- 当您要展示一些数字时(一个表格中的数字太多会让人感到困惑)
- 当精确的值对你的论点至关重要,而一个图表不能表达同样的精确程度时。例如,当重要的是读者知道结果是 2.48 而不是 2.45 时
如果您希望引起对数据模式的注意,最好在表的列中显示,而不是在行中,因为向下读取一列比读取一行更容易。决定哪一列包含最重要的趋势,并以此为焦点来构建表格。如果不止一列同样重要,那么包含两个或多个简单的表通常比使用一个更复杂的表更好。
根据数值大小(例如从大到小)对列中的数字数据进行排序通常会有所帮助,除非您想要突出显示数据中的特定模式或趋势。有效表格呈现的其他要点如下:
- 所有表格都应包含一个描述性标题,其中包含足够的细节,读者无需查阅随附的文本即可理解内容,标题中应包含计量单位(如百分比、总数和频率)
- 可以使用线条和/或粗体文本将标题与数据主体分开
- 特定行可以突出显示/加阴影以引起注意
- 应该避免列与列之间有很大的间隙,因为这样很难一行一行地阅读
图形和图表是呈现大量数据的一种特别有效的方式,但也可以用来代替表格来呈现较小的数据集。图表和图形可以用来快速说明数据。二维图表通常比三维图表更容易阅读。一般来说,图表应该:
- 始终显示标题和轴标签,并在必要时提供一个键
- 显示测量单位(如百分比、总数和频率)
- 尽可能使用天平
- 使用不影响数据的细微网格线
- 在条形图、直方图和饼图中使用颜色或阴影图案来反映正在绘制的数据类别中的任何自然序列,以便相邻区域的颜色从暗到亮渐变,反之亦然
以图表的方式呈现数据可能需要一些预先考虑,以便选择最佳的比例。例如,数据的最佳视图可能来自于从非零点开始任一轴。图 14-1 显示了人人卡公司的销售数据图,其中纵轴从零开始。图 14-2 显示了相同的数据,但是垂直轴从 96 开始。
图 14-2。
An example of sales data from Cards for Everyone Inc. presented on a graph with the vertical axes starting at 96
图 14-1。
An example of sales data from Cards for Everyone Inc. presented on a graph with the vertical axes starting at zero
数据中的趋势在图 14-2 中更容易看到。在这种情况下,应该清楚地标记起始值,将读者的注意力吸引到文本中的非零起始值上。
直接从数据库生成报告
报告使文档可以从数据库表或查询中设计出来,这些表或查询可以以电子形式轻松共享,也可以在远离计算机的地方查看。例如,报告可以用来总结哪些产品卖得好,哪些客户一直在购买。图 14-3 显示了最初出现在第一章中的查询,图 14-4 显示了相应的报告,该报告也出现在第一章中。
图 14-4。
Sample report for Cards for Everyone Inc.
图 14-3。
Sample query for Cards for Everyone Inc.
有关从数据库生成简单报告的详细信息,请参见本书末尾的附录。
案例研究和描述性报告
不是所有的数据都会涉及到分析数字。你报告的一部分可能会描述事件。例如,"连接南方"可能在其报告中包括一些案例研究,描述其询问者面临的问题以及工作人员如何帮助他们。此类案例研究将揭示团队在每项调查中投入的精力,这些精力很难通过调查者数量、每个调查者的电话数量等数量分析来捕捉。
为了保护查询者的匿名性,任何姓名和具体细节都应小心隐藏。通常,仅仅删除姓名和地址是不够的。某人的特殊情况可能意味着他们很容易被认出来——例如,某人有着不寻常的职业。每个案例研究都应该由团队中的许多人进行校对,以确保任何识别特征都被掩盖。
作为一个团队制作报告
与数据库和一些电子表格一样,团队报告通常需要几个人同时访问。最有效的方法是使用云,这将在第十八章中介绍。过去的趋势是通过电子邮件交换报告的版本,这可能会导致版本混淆。
当几个人对报告做出贡献时,你需要确保每个部分都是一致的。这包括语言以及字体样式和字体大小。请至少一个没有参与撰写的人通读报告是有用的,以便找出不一致的地方。
当报告准备好时,以只读格式保存它,这样就不能对它进行未经授权的更改。PDF 格式是一个很好的选择,因为任何人都可以使用免费的 PDF 阅读器查看它,不管他们使用的是什么操作系统。
摘要
你的数据分析报告应该简洁明了,有很好的文字和图表组合。你分析的目的、结果和结论都应该清晰。该报告的主要目的是促进基于您的业务目标的有效决策。
十五、根据报告采取行动
数据分析报告,如果有效地执行,可以让您了解您的企业如何实现其目标。如果需要变革,变革越快越好,这样你的企业就能尽可能保持竞争力。这些操作可能涉及到对数据库进行永久更改。相比之下,第十六章考虑了如何在不对数据库做任何改变的情况下响应一次性的外部数据请求。
概观
为了对报告进行操作,您的数据库设计必须灵活,并且您必须能够使数据库在短时间内脱机。需要培训员工使用调整后的数据库:培训在第二十章中介绍。
以下部分使用 Cards for Everyone Inc .中的一个示例,描述了响应报告时更改数据库的可能方法。
例如:人人卡公司。
图 15-1 ,重述自第十二章,显示了每个人公司数据库的卡片设计,作为提醒。正如在第一章中所描述的,Cards for Everyone Inc .出售在其网站上展示的卡片。该数据库包含客户、发票、产品和供应商的表,以及员工及其工资的表。每个客户购买的每个产品的数量存储在 Invoices2Products 表中。
图 15-1。
Database design for Cards for Everyone Inc.
假设 Cards for Everyone Inc .的一份报告提供证据表明,一年后卡片销售趋于平稳,表明业务增长停滞不前。经理帕特想调查并找出销售不景气的原因。
Pat 认为,Cards for Everyone Inc .的主要吸引力在于客户可以在任何地方快速地在线购买卡片,并且在网站上很容易搜索到这些卡片。她想回顾数据收集和数据分析,以下降的销售额为焦点,以便找出正在发生的事情。
进一步的数据收集和分析
帕特组织了一次顾客满意度调查,以判断销售额下降的原因。调查的反馈表明,与商业街商店或其他互联网企业提供的卡片相比,顾客发现 Cards for Everyone Inc .的卡片选择相当有限。顾客也想设计他们自己的卡片——例如从照片或个人艺术作品中设计。此外,一些客户对信用卡缺货、订单被延迟或取消表示愤怒。
Pat 尝试了几种方法来提高销售额并留住客户:
- 通过尝试新的供应商来增加卡片的选择
- 通过供应商提供新的服务,这些供应商能够根据照片和图纸制作您自己的卡片
- 出售与卡片相关的物品,如邮票、包装纸、礼品标签和小礼物
- 分析全年的销售情况,以确定何时是增加库存的最佳时机,并提高企业对订单的响应能力
定期重复数据分析,以评估这些额外步骤对销售的影响。针对人人用卡公司的新重点,对数据库进行了一些更改,包括:
- 新列的添加
- 新表格的添加
- 拆分现有表格
- 更改现有查询
- 改变现有的形式
这些步骤将在接下来的章节中进行说明。
添加新列
由于产品的类型将不再局限于卡片,因此在 Products 表中增加一列来进行区分将会很有用。ProductType 列被添加到 Products 表中,该表可以接受这些值—卡片、邮票、包装纸、礼品标签、礼品和个性化。
Note
确保在向表中添加新列时,遵循“进一步检查”一节中的第七章中概述的规则是很重要的。
通过转到数据库中有问题的表的设计来添加新列。在 MS Access 中,就是进入设计视图并添加列名和数据类型,如图 15-2 所示。
图 15-2。
Adding a new column called ProductType to the Products table of the Cards for Everyone Inc. database Note
关于创建和查看表格的具体细节可以在本书末尾的附录中找到。
图 15-2 中表格显示的 ProductType 列的数据类型为短文本。为了保持数据尽可能的“干净”,最好将产品类型列的数据类型设置为查找,并包括每个可供选择的产品类型,如第十章所述。
在这一阶段,ProductType 列已经添加到 Products 表中,但是还没有填充数据。如果没有将 ProductType 列引入数据输入表单、查询、报告等,它将保持未使用状态。对 Pat 来说,向她的团队解释已经做出的改变以及解释为什么有必要做出改变是很重要的。
在此示例中,将 ProductType 列添加到数据库需要四个操作:
- 需要将新的供应商添加到供应商表中
- 相应的产品需要添加到 products 表中,并带有它们的 ProductID 和 SupplierID
- 对于每个新产品,需要添加相应的产品类型
- 需要为 products 表中在添加 ProductType 列之前就存在的产品填充 ProductType 列;这些都有 ProductType = 'Card '
假设 Cards for Everyone Inc .选择了三家新供应商——Art and Stuff(销售卡片和包装纸)、Glittery Fun(销售卡片、包装纸和小礼物)和 My Designs(利用照片和图画制作卡片)。供应商表将更新为三个新的供应商,如图 15-3 所示。
图 15-3。
Adding new suppliers to the Suppliers table of the Cards for Everyone Inc. database
许多这些新的卡片没有一个特定的类别,里面是空白的:一个新的类别被引入来包括这样的产品,称为所有场合。这一类别可适用于卡片以外的产品,如包装纸。
Cards for Everyone Inc .可以代表其客户在任何给定时间订购多达 100 张的个性化卡片:因此在 QuantityAvailable 一栏中最多有 100 张。
产品表将被更新,如图 15-4 所示,每个新产品都有相应的产品类型。
图 15-4。
Populating the ProductType column with new entries in the Products table of the Cards for Everyone Inc. database
在图 15-4 中,您可以看到在添加 ProductType 列之前,所提供的产品没有 ProductType。如图 15-5 所示,这可以通过向这些行中的每一行添加 ProductType = 'Card '来纠正。
图 15-5。
Completing the ProductType column for earlier entries in the Products table of the Cards for Everyone Inc. database
随着业务的增长,手动完成如图 15-5 所示的变化是不太可能的。你需要将它们自动化。更新查询可用于一次自动更改一列中的几个值。本书末尾的附录中详细介绍了建立一个简单查询所需的过程。下面是一个简短的更新查询示例。
在开始此过程之前,请备份您的数据库。然后有两个步骤。
第一步是选择要更新的列中的数据。您可以通过指定所需的标准来做到这一点。图 15-6 显示了一个例子,它要求 ProductType 的所有空值——即 ProductType 的所有未被填充的值。它还要求输入 ProductName,以便可以识别 ProductType 的每个实例。检查查询是否返回了正确的行。否则,您需要调整标准陈述。
图 15-6。
Query to select Null values in the ProductType column for the Products table of the Cards for Everyone Inc. database
一旦确定选择了相关列的正确值,第二步就是应用更新查询。在 MS Access 2013 中,从“查询类型”部分的“设计”选项卡中选择 UpdateQuery。图 15-7 展示了一个更新查询,它用值‘Card’替换 ProductType 列中的所有空值。
图 15-7。
Update query that completes the ProductType column for earlier entries in the Products table of the Cards for Everyone Inc. database
添加新表格
决定在 Cards for Everyone Inc .的数据库中添加一个名为 Orders 的新表,以便 Pat 可以密切关注库存水平。新表包含以下列:
- 产品 id
- 供货商编号
- 预测或梦想数量
- NextOrderDate
在下新订单之前,需要检查 Products 表中的 QuantityAvailable 列。
创建新表非常简单。需要采取第七章中的步骤,并插入图 15-8 中所示的所需关系。订单表和数据库的其余部分之间有两种关系:
- 订单和产品之间的一对一关系。每种产品的库存都是单独考虑的。每当下新订单时,它只适用于一种产品。相反,当产品需要重新订购时,只需下一个订单。
- 供应商和订单之间的一对多关系。每份订单都交给一个供应商。但是,一个供应商可以接收多个订单。
图 15-8。
The relationships of the Orders table Note
数据库关系在第七章中有详细介绍。
与上一节中的新列一样,如果新表没有被填充和合并到表单和查询中,它将不会被使用。
拆分表格
Pat 决定将 QuantityAvailable 列从 Products 表中删除,放在 Orders 表中以避免混淆。做出这一决定的原因是 QuantityAvailable 列中的数据与订单直接相关,但与产品不直接相关。诸如此类的观察结果将在第七章的章节“进一步检查”中讨论。拆分表有许多步骤,当您对导入和导出数据越来越熟悉时,拆分会变得越来越容易。
Note
本书末尾的附录中介绍了数据的导入和导出。
有许多方法可以将可用数量从 Products 表移动到新创建的 Orders 表中。这里有一个建议:
Back up your database Create a new table called Orders with the ProductID, SupplierID, QuantityAvailable, PredictedOrderAmount, and NextOrderDate columns. Export the data from Products to a spreadsheet. On the spreadsheet, delete all the columns in Products except ProductID, SupplierID, and QuantityAvailable, as shown in Figure 15-9.
图 15-9。
Exported and cropped data from the Products table of the Cards for Everyone Inc. database Create two new columns on the spreadsheet entitled PredictedOrderAmount and NextOrderDate, as shown in Figure 15-10.
图 15-10。
The PredictedOrderAmount and NextOrderDate columns added to the Orders table Add the data to the PredictedOrderAmount and NextOrderDate columns, as shown in Figure 15-10. (You can do this after the data has been imported to the Orders table in your database if you prefer.) Import the data from the spreadsheet to the Orders table and ensure that it has moved successfully. Delete the QuantityAvailable column from the Products table.
您需要仔细研究拆分“产品”表对任何使用产品的查询、窗体或报表的影响。移动 QuantityAvailable 列可能会导致链接断开和错误,您可能需要在以后的阶段修复这些错误。
重要的是让每个人都知道变化即将到来,这样他们就可以做好准备。此外,如前所述,在进行更改时,数据库应该脱机。
添加新对象
新查询、表单和报告的添加遵循与之前相同的步骤。但是,您必须确保对数据库所做的更改没有损坏任何表或查询。检查表之间的链接、表列中的值以及查询是否按预期运行。一旦你对一切正常感到满意,你就可以按照本书附录中的步骤添加新的对象。
摘要
阅读完本章后,您应该有信心评估何时需要对数据库进行更改以及如何实现这些更改。数据库可以非常灵活,所有的设计工作都需要在项目开始时进行,这是一个神话。小企业需要能够对市场状况做出反应,以保持竞争力和发展。
第十六章考虑了对外部请求的响应,与本章不同,它不涉及对数据库的永久更改。
十六、根据外部要求采取行动
到目前为止,数据库都是根据业务目标设计的。但是,如果一个请求来自一个外部来源,并以他人的目标为焦点,会发生什么呢?如何从数据库中提取适当的数据?
最后一章着眼于根据报告的结果和业务策略的变化对数据库进行永久性的修改。本章考虑在不进行永久更改的情况下回答查询。回应外部请求需要尽可能创造性地使用你熟悉的工具,包括:
- 搜索
- 过滤
- 询问
您还需要能够识别何时无法用现有数据回答查询。例如,假设一个法律监管机构要求 Jennings-Havard 律师事务所提供他们有多少英国白人客户和欧洲白人客户的详细信息。他们的数据库包含关于客户种族的数据,如图 16-1 所示。
图 16-1。
Ethnicity table from the Jennings-Havard Law Offices database
可以看出,白色类别没有细分为子类别,因此无法从图 16-1 的表格中推断出所需的数据。可以进行猜测,特别是关于男性客户和未婚女性客户(他们有自己的姓),但不准确性会很高。这样的要求是不可能回答的。
另一方面,您可能预期会定期发出外部请求,因此您的数据库应该相应地进行调整。在这种情况下,你需要重温第十五章中概述的技术。
以下部分提供了向 Cards for Everyone Inc .和第二章–第四章案例研究中的每个小企业提出的外部请求的示例,并展示了如何回应这些请求。
人人贺卡公司。
顾客可以联系 Cards for Everyone Inc .询问各种问题。例如,购买了莫奈百合卡的客户可能想了解同一产品系列中的其他产品。从业务数据库中提取这些数据的一种方法是:
- 找出莫奈百合的供应商。
- 筛选同一供应商的所有产品。
产品表再次如图 16-2 所示。从表中可以看出,莫奈百合花卡的供应商是 SupplierID=400。
The Products table of the Cards for Everyone Inc. database . Notice from the table that the supplier of the Monet Lilies card is SupplierID=400.Note
可能需要搜索或过滤来从大型表中找到这些信息。例如,可以对包含 Monet 或百合的行的 ProductName 列应用筛选器。
要查找其他产品(包括莫奈百合),过滤 SupplierID=400。该过滤器返回如图 16-3 所示的四种产品。
图 16-3。
Filtering the Products table of the Cards for Everyone Inc. database on SupplierID=400
然后,您可以告诉客户 SupplierID=400 销售的其他三种产品。
Note
为了回答这个请求,不需要知道供应商的实际名称。
来自客户的许多信息请求遵循类似的模式,并且可以使用查询来回答。另外三个例子是:
例 1:一位客户对你所有的空白卡片感兴趣。要生成列表,请转到“产品”表,然后按照下列步骤操作:
- 释放任何现有的过滤器。
- ProductType = 'Card '上的筛选器。
- 按类别筛选=“所有场合”。
例 2:一位客户对你所有低于 4 美元的产品感兴趣。要生成列表,请转到“产品”表,然后按照下列步骤操作:
- 释放任何现有的过滤器。
- 根据“低于”4 筛选价格列。
示例 3:一位客户对您销售的包装纸系列感兴趣。要生成列表,请转到“产品”表,然后按照下列步骤操作:
- 释放任何现有的过滤器。
- 筛选等于“包装纸”的 ProductType 列。
一般来说,如果客户联系 Cards for Everyone Inc .并反复提出相同的请求,将数据库链接到客户可以自己运行查询的网站是有意义的。这种功能经常在网上购物网站上使用。在 Cards for Everyone Inc .的案例中,最初的网站是由一个承包商建立的。该承包商还可以将数据库链接到网站,并纳入查询。
智能手推车公司。
智能手推车公司正在寻找新的投资。一个潜在的投资者要求各种效率比率来衡量企业如何有效地使用其资产和管理其程序。
例如,存货周转率显示了一个企业在给定时间内将存货(在这里是材料库存)转化为销售额的效率。其计算方法如下:
存货周转率=销货成本/存货
在哪里
- 商品销售成本是指在给定时间内销售商品的成本
- 库存指的是在一段时间结束时的库存水平,或者是整个时间段内的平均水平
出于会计核算的目的,企业通常会记录销货成本。在本例中,我们将考虑如何计算库存:
库存=总和(价格×可用数量)
对于库存的每一项材料。低比率意味着销售不佳和库存过剩。高库存水平代表零回报率的投资。这可以表明企业管理应该更有效率。此外,如果价格开始下跌,企业可能会陷入财务困境。高比率意味着强劲的销售或者无效的购买。
有时,非常高的库存比率会导致销售损失,因为没有足够的库存来满足需求。将库存周转率与行业基准进行比较,以确定一家公司是否成功地管理了其库存,这一点始终非常重要。
对于 Smart 独轮车公司去年的情况,假设销售成本为 4,362 美元。图 16-4 显示了计算 Smart 独轮车公司当前库存所需的查询设计,结果如图 16-5 所示。引入了一个新的列“库存”,它是价格和可用数量列相乘的结果。
图 16-5。
The output from the query in Figure 16-4
图 16-4。
Query for finding the inventory on the Smart Wheelbarrows Inc. database
要查找给定时间段的总库存,只需对库存列求和。您可以创建一个查询来执行此计算。
Note
在第七章的中,智能手推车公司的数据库设计中,手推车所用油漆的详细信息存储在一个单独的表中。为了保持示例简单,这里不包括这些细节。
当对库存列求和时,本期的总库存为 727 美元。存货周转率为 4362/727 = 6。
詹宁斯-哈佛律师事务所
Jennings-Havard 律师事务所希望在广告方面投入更多资金,一位潜在的广告客户问他们社交媒体对他们有多大帮助。为了找到答案,他们设置了一个查询来返回每个联系人的日期及其来源,如图 16-6 所示。其输出如图 16-7 所示。
图 16-7。
The Result of running the query in Figure 16-6
图 16-6。
Query to find DateOfInitialContact and ClientSource for Jennings-Havard Law Offices
在这个例子中,没有人通过社交媒体发现 Jennings-Havard 律师事务所。随着更多的客户和社交媒体的使用,他们可以使用数据分析来考虑一段时间内的趋势。第十三章描述了一些他们可以使用的方法。散点图是一种方法;图 16-8 显示了 2014 年期间每月通过 Twitter 了解公司的客户散点图示例。
图 16-8。
The number of clients per month with ClientStatus=‘Twitter’
从图 16-8 可以看出,通过 Twitter 了解简宁斯-哈佛律师事务所的客户数量正在上升。
连接南侧
连接南区希望能够使用其数据库来回答来自其拨款专员的意外问题。下面是两个例子。
例 1:有债务问题的“连接南区路标”询问者可以使用哪些服务?这个问题可以分两步回答:
- 确定打电话询问债务问题的人。
- 找到他们提到的组织。
图 16-9 显示了来自第七章的案例表,增加了一行,这样两个客户就有了债务问题。
图 16-9。
Cases Table from Connecting South Side
查询如图 16-10 所示。从 CaseCategory = 'Debt '的 cases 表中选择所有案例,并显示每个案例在 organizations 表中对应的组织。
图 16-10。
Query to output all organizations for cases with ContactCategory=‘Debt’
运行图 16-10 中查询的输出如图 16-11 所示。
图 16-11。
The output from running the query in Figure 16-10
例 2:有多少病例与糖尿病有关?
这可以通过在 Cases 表中筛选单词“糖尿病”的 NotesAboutContact 列来回答。图 16-12 显示了一个简单的表单,用于将数据输入到案例表中。已对 NotesAboutContact 框应用了筛选器。如果“包含”选项与“糖尿病”一起使用,将出现此框中提到糖尿病的所有病例。
图 16-12。
Input form for the cases table of the Connecting South Side database with a query applied to the NotesAboutContact column
摘要
本章演示了数据库的灵活性。当您遇到外部数据请求时,您可以将数据库用作回答问题的有用工具。有时将这样的查询永久地合并到数据库中是有意义的。其他时候是不可能回答数据请求的,因为无论你尝试什么样的查询和搜索,都无法推断出想要的数据。
十七、存档您的数据库
第十六章讲述了如何满足外部的信息请求,这通常需要存储大量的历史数据,随着企业的扩张,这些数据的数量会越来越大。此外,诸如 2002 年美国萨班斯-奥克斯利法案等法规要求上市公司、会计师、律师和其他人在审计后将业务记录存储五年,将财务数据存储七年。这进一步增加了存储历史数据的负担。
无论增加多少硬件或对应用程序进行多少微调,在计算机系统上存储越来越多的数据都会导致性能下降。因此,企业需要一种有效的方法来管理这种增长。
数据归档是指将非活动数据与正在使用的数据分开,并将非活动数据存储一段时间的过程。数据库归档侧重于归档存储在数据库中的数据。数据库存档的主要目标是保持对非活动数据的访问,以防以后需要满足特定的业务政策或政府法规,同时优化活动数据库的性能。如果不再需要存档的数据,可以将其销毁。正如在第八章中所讨论的,数据保护法通常规定数据的保存时间不应超过需要的时间。
数据归档将在您的数据库操作已经成为常规操作并且您的数据已经被清理之后进行。该程序可能会定期执行。当您开始使用数据库时,您的归档过程可能非常简单—也许您正在当前数据库中的活动表和非活动表之间移动数据,或者从当前数据库向专门为归档目的而设置的数据库移动数据。然而,随着你的业务增长,你可能需要寻找更复杂的方法。
数据库存档和数据库备份的区别
数据库备份旨在提供在出现重大问题时完全恢复当前数据库的全部或主要部分的能力。相比之下,数据库归档侧重于提供对少量数据(如表中的单行数据)的访问,以响应特定的数据请求。
备份是不断变化的活动数据库的辅助拷贝,因此往往是短期的,并定期被覆盖。这可能使它们不适合提供数据来响应业务政策和政府法规。此外,从备份中检索特定数据既耗时又昂贵,尤其是在存储介质(如磁带)不在现场的情况下。与典型的备份不同,归档必须能够经受时间的考验,鉴于技术不断变化的本质,这可能是一项挑战。
确定哪些数据应该归档
并非所有数据都同样重要。例如,如上所述,一些企业需要将其财务记录存档至少七年,以符合政府法规,但其他数据,如不再使用的供应商联系人,就不那么重要了。根据这些要求,企业可以创建数据保留策略,指定保留和归档各种类型数据的标准。这些归档策略必须考虑相关业务的数据访问模式。
来自第二章–4 中案例研究的以下示例说明了归档策略是如何演变的。
智能手推车公司。
假设智能手推车公司对其客户的购买习惯和自己的材料购买模式进行了大量的数据分析。该分析用于制定如下数据保留策略:
- 人们发现,一年多没有买东西的顾客很少再从这家商店买东西。有鉴于此,制定了一项政策决定,将最后一张发票已过期一年以上的客户的所有联系信息和发票存档,并保存五年。
- 在为组件找到新的供应商后,企业很少重用该供应商。但是,如果任何组件有问题,可能需要联系以前的供应商。这意味着他们的联系方式和他们所提供产品的数据必须存档并无限期保存。
詹宁斯-哈佛法律事务所有限公司。
Jennings-Havard 律师事务所案件的数据保留政策侧重于是否已立遗嘱,如下所示:
- 没有遗嘱的案件在结案后六个月归档,保存五年。
- 有关遗嘱的案件在结案后六个月归档,并保存至遗嘱主体死亡,如果死亡发生在五年内,则保存五年。
连接南侧
数据保留政策基于查询者和连接南方的工作人员的行为模式
- 分析显示,一年后没有返回连接南区的询问者不太可能再次这样做。有鉴于此,所有已结案一年或更长时间的案件将被归档,直至赠款到期。
- 分析还表明,一年或更长时间没有被连接南侧使用的组织不太可能被再次使用。因此,符合这些标准的所有组织的详细信息将被存档,直到授权到期。当授权到期时,如果新的授权取代了它,则归档的组织被审计:具有不同焦点的授权可能意味着一些归档的组织变得相关。
实际问题
首先,您可能会以小规模的方式存档您的数据,例如,在闪存或硬盘驱动器上。但是,随着久而久之和您需要归档的数据量的增长,您将需要更多地考虑您所使用的存储介质。归档文件可能会存储很长时间,因此请选择一种介质类型,只要您的保留策略允许,它就可以保存很长时间。
同样,您的归档策略以及用于归档数据的存储机制无疑会随着时间的推移而改变。因此,明智的做法是每年至少查看一次您的档案,看看是否有任何内容需要迁移到不同的存储介质。
对于拥有大量数据的企业来说,磁带通常被认为是归档数据的好方法,因为它寿命长、成本低,尤其是与硬盘驱动器相比。对于其他企业,云归档是一个可行的解决方案。云在第十八章中有所涉及。
使用 MS Access 为 Everyone 公司的卡片存档表的例子。
以下示例提供了存档数据的基本工具,这些工具在数据库的早期阶段特别有用。您可以创建表来存档现有数据库或单独数据库中的数据。该示例使用使用 MS Access 2013 的当前数据库中的表。
假设经理 Pat 想要将所有 2014 年 12 月之前的 Everyone Inc .的信用卡发票存档到一个名为 Archived Invoices 的特殊存档表中。以下过程会将所需数据从发票移至已存档的发票:
Back up your database. Design a query that will select the required rows and columns from the Invoices table, as shown in Figure 17-1. Here you are backing up all the columns of the Invoices table and all the rows with InvoiceDate earlier than December 2014. Notice the criteria of the InvoiceDate column, which indicates that only invoices before December 2014 are selected.
图 17-1。
Query to select all rows from the Invoices table of the Cards for Everyone Inc. database with an InvoiceDate earlier than December 2014 Note
图 17-1 中的查询有很大的灵活性。例如,您可以选择日期在 2014 年 11 月的所有行、2014 年的所有行等等。
如果您愿意,可以对 InvoiceDate 列使用过滤器。
简单的查询在本书的附录中有详细介绍。
Run the query (using !) and check that it returns the rows that you are expecting. Figure 17-2 shows the output after running the query in Figure 17-1.
图 17-2。
Output from running the query in Figure 17-1 If the output from the query is correct, you need to choose a destination table in which to archive the data. Here we are choosing a table called Archived Invoices, which has the same columns and data types as the Invoices table and resides in the same Cards for Everyone Inc. database. Select the Append (Add) Query from the toolbar of the Design tab above the Query Design View. This will give you the options shown in Figure 17-3. You can see that you are given the choice of selecting destination tables either within your existing database or from another database.
图 17-3。
Append query design for the Invoices table for Cards for Everyone Inc. Run the Append query just as you would any other query (using !). Check the results of the Append query by opening the Archived Invoices table. You should find that the results in Figure 17-2 have been appended to the Archived Invoices table. If all the rows that you are expecting have been appended to the Archived Invoices table, you can delete them from the Invoices table by running a Delete query. Such a query has the effect of selecting the rows from the table specified and removing them permanently. A Delete query is designed in the same way as an ordinary query, only with the Delete query option selected, as shown in Figure 17-4.
图 17-4。
A Delete query to remove invoices with InvoiceDate before December 2014 from the Invoices table
这个例子没有考虑表之间的任何关系,当您试图避免留下没有任何“父”的行时,这一点尤其重要
例如,图 17-5 显示 Invoices 表链接到另外两个表 Customers 和 Products2Invoices 表。
-
如果客户没有相应的发票,这并不构成问题,因为客户将来可能会回来订购更多的产品。合理的做法是将他们的详细信息保存在 Customer 表中,以防发生这种情况。
-
Entries of the Invoices2Products table show which products have been bought for each invoice: an example of a populated Invoices2Products table is shown in Figure 17-6. If an entry of the Invoices2Products table is left with no link to an invoice, it is “orphaned.” It serves no purpose and will never be used again, as it refers to a deleted invoice. If rows from the Invoices table are deleted, the rows with matching InvoiceNo in the Invoices2Products table will have broken links.
图 17-6。
Populated Invoices2Products table in the Cards for Everyone Inc. database
图 17-5。
The relationships between the Invoices table and adjacent tables in the Cards for Everyone Inc. database
解决“孤立”行问题的最简单方法是在从发票表中删除行时使用级联删除。这不仅会删除发票表中的行,还会删除具有相同发票号的其他表中与之链接的所有行。
要使用这个工具,您需要编辑表之间的关系,以便应用级联删除功能。
Note
编辑关系包含在本书的附录中。
图 17-7 显示了在创建或编辑发票和发票 2 产品之间的关系时使用的级联删除功能。
图 17-7。
The Cascade Delete function as part of the relationship between two tables
或者,您可能希望存档 Invoices2Products 表中与 Invoices 表中已存档的行相对应的行。这是通过使用一个连接查询实现的(在第十章中介绍)。
如果您选择与已存档的发票行相对应的发票 2 产品行(即,与 2014 年 12 月之前开具的发票相对应的行),这些行可以添加到已存档的发票 2 产品表中。图 17-8 显示了发票和 Invoices2Products 之间的连接查询,该查询从 Invoices 表中选择 InvoiceNo,并从 Invoices2Products 表中选择相应的 ProductID 和 QuantityPurchased。
图 17-8。
Join query between the Invoices and Products2Invoices tables on the Cards for Everyone Inc. database
图 17-9 显示了运行图 17-8 中查询的结果。然后可以使用前面描述的方法将这些数据添加到 invoices 2 产品的档案中。
图 17-9。
The output from running the query in Figure 17-8
摘要
数据和数据库归档是业务运营的重要组成部分。它建立在满足外部请求的讨论之上,并涉及存储非活动数据,以便在需要时可以有效地访问这些数据。大量未使用的数据可能会降低当前系统的速度,因此将它们分开很重要。
十八、将您的数据库存储在云中
云计算是指通过互联网存储和访问数据和程序,而不是从你的计算机硬盘上。云有许多关键特征:
- 无需预先安装和配置任何硬件或软件,即可直接获得服务。
- 服务通常是按需付费的,没有长期合同或预付。这是可能的,因为提供商可以准确地告诉用户使用了多少给定的服务。
- 管理云中软件和硬件的责任完全落在提供商身上。
- 提供商快速响应用户需求的变化,对云中的资源进行扩展(扩大或缩小)。
云的三个主要“层”如下:
- 软件即服务(SaaS):访问提供基于网络/web 的应用程序或服务的软件,例如 Dropbox、Google Docs 和 Salesforce.com。
- 平台即服务(PaaS):为软件开发人员提供的操作系统、计算机语言解释器或 web 服务器形式的平台,他们可以编写自己的应用程序,然后将代码上传到云中。PaaSs 的例子有 Google AppEngine、MS Engine Yard 和 OpenShift。
- 基础设施即服务(IaaS):无需具体细节即可提供虚拟服务器和存储。IaaSs 的例子包括 Apache CloudStack、Eucalyptus、OpenStack、Amazon Web Services EC2 和 Google Compute。
没有 IT 专家的小企业很可能只使用 SaaS。
此外,公有云和私有云也有区别。公共云基于由第三方提供商拥有和运营的共享物理硬件。相比之下,私有云是由特定企业专用和设计的。小型企业通常只关心公共云。
对于小型企业来说,云有优点也有缺点,这两者都将在下面的章节中探讨。
云对小型企业的优势
对于小型企业来说,云有许多潜在的优势。
- 您的数据可以在任何具有互联网连接和兼容软件的设备上访问。你可以在家里编辑一个文件,然后在工作的时候从你停下的地方继续。同事们也可以在同一文档上进行协作。
- 云使您能够释放笔记本电脑和其他设备的内部存储资源。
- 由于云中的远程服务器处理大量的计算和存储,您不需要购买昂贵的机器。云计算服务通常是随用随付,这意味着不需要资本支出。因此,使用云可以削减项目启动成本,并带来可预测的持续运营费用,并有可能使小型企业能够与大型同行竞争。
- 与磁带相比,云计算可以提供快速、简单的灾难恢复计划,而磁带通常比较慢。
- 使用云计算的企业只使用他们需要的服务器空间,这减少了他们的碳足迹。
云的缺点
并非所有关于云的事情都是积极的。主要关注的是服务的可靠性(由于其对互联网的依赖)及其安全性。
如果没有可靠的互联网连接,您将无法访问您的数据和基于云的应用程序。如果在服务器端有任何问题,这同样适用。
一些企业使用混合云解决方案来缓解这个问题。存储在云中的数据被复制到本地硬盘上。一般来说,最好不要完全依赖云来在发生灾难时保护数据库。
云安全最近一直在媒体上。云服务提供商有资金和动力来确保其服务的安全,但通常会因违规而受到指责,而违规是消费者的责任。云服务提供商负责确保他们的应用程序和 IT 基础设施安全且正常工作。然而,消费者有责任管理密码、防范身份欺诈、防止设备丢失或被盗、加密敏感数据以及通过安全网络访问设备等。这种设施通常作为云包的一部分提供,但作为消费者,您应该检查它们是否存在并使用它们。在没有妥善保护数据的情况下,将数据丢失归咎于云,就像是在你把钥匙留在点火装置上后,将汽车被盗归咎于租车公司一样。
重要的是,您要找到一家使用最先进的加密技术的云服务提供商,以确保您的数据在传输过程中以及静止时都是安全的。所有的帐户都应该有密码保护,你应该能够设置一个只有你有权访问的个人加密密钥。
一般来说,如果您对数据承担适当的责任,那么您的数据库在云中应该是安全的。
在云中备份数据库
许多云备份服务提供的不仅仅是存储空间。在大多数情况下,您将获得一些服务,如自动安排备份运行的能力,这样您就不必记忆了。其他有用的功能包括删除文件恢复和文件版本控制,后者使您能够恢复到以前保存的文件副本。
单个帐户的在线存储量各不相同。许多提供商提供无限的容量。
在云中归档您的数据库
如果您有大量数据要归档,在您自己的系统上维护归档可能是一项成本高昂且耗时的工作。
云归档服务的目的是提供一个数据存储环境即服务,该服务针对长期数据保留、安全性和遵守数据监管政策进行了优化。一旦进入云归档,数据必须易于搜索,并且受到保护,不会被覆盖或篡改。自动应用数据保留策略也应该是可能的。您必须确信您的数据在安全的人手中,并受到可靠的灾难恢复系统的保护。
有了云归档,您无需购买、维护或升级任何特定的内部硬件。您应该获得一个价格合理且可预测的无限存储和无限保留空间。选择取决于您有多少数据,以及在现有硬件上存储有多简单。
将您的数据库迁移到云中
将您的数据库迁移到云中,让您可以在任何有互联网连接的地方自由工作,更轻松地与同事协作,并获得更大的存储空间和更快的处理速度。无需投资更多硬件即可获得这些优势。
云服务通常不是免费的,由您来决定这些优势是否值得额外的花费。您需要仔细考虑数据的安全性以及所选服务的可靠性。
将 Access 数据库移动到云中
将 Access 数据库移入云中的方法取决于您使用的 Access 版本。MS Office 的云版本是 MS Office 365,你可能已经在用了。
如果您还没有帐户,请创建一个 MS Office 365 帐户。
Note
MS Office 365 提供的服务由 MS SharePoint 托管,您可以将数据库发布到任何支持 Access 的 SharePoint 服务器。
您可以使用 Office 365 提供一个云位置来存储和操作您的 MS Access 数据库。这是数据和数据库对象在 SQL Server 或 Microsoft Azure SQL 中的存储位置。您将需要检查您的 Office 365 版本是否提供此功能—家庭版本不提供此功能。
当人们经常不在办公室时,使用存储在云中的数据库的能力特别有用。例如,Smart 独轮车公司的首席执行官霍华德经常不在办公室从事网络和营销工作。有了云中可访问的业务数据库,Howard 可以在旅途中登记销售,客户的订单会立即得到处理。此外,如果 Howard 想在离开办公室时从潜在客户处获得一个大订单,他可以访问数据库,并根据库存材料的供应量和系统中当前的其他订单数量来预测处理该订单需要多长时间。
Access 2010 及之前版本
使用以下步骤将 MS Access(2010 版及更早版本)迁移到云中非常简单:
- 检查您的数据库是否与 SharePoint 兼容:
- 从“文件”菜单中选择“保存并发布”。
- 在出现的菜单的“发布”部分,选择“发布以访问服务”选项。
- 单击运行兼容性检查器。
- 如果您的数据库与 SharePoint 兼容:
- 从“文件”菜单中选择“保存并发布”。
- 在出现的菜单的“发布”部分,选择“发布以访问服务”选项。你需要:你的 Office 365 网站的服务器 URL,通常采用
http://yourname.sharepoint.com/teamsite
的格式。站点的名称,如mysite
。
- 验证这些设置后,单击“发布到 Access Services”按钮继续。您的数据库的 URL 将采用以下形式:
http://yourname.sharepoint.com/teamsite/mysite
Access 2013 及更高版本
对于 Access 2013 和更高版本,您需要创建 Access 应用程序。Access 应用程序是在 web 浏览器中使用的数据库,可以在 Access 2013 和更高版本中进行设计和编辑。使用 Access 2013 和更高版本,在云中设计数据库可能比在桌面上设计更容易。
要创建自定义 Access 应用程序,请按照下列步骤操作:
- 打开 Access 2013 或更高版本,然后单击自定义 Web 应用程序。
- 输入应用程序的名称和服务器位置(您也可以从“位置”列表中选择服务器位置)。
- 单击创建。
- 在“添加表”页(创建新的自定义应用程序时首先看到的内容)上,您可以从各种来源导入数据,如其他 Access 数据库、Excel 和 SharePoint 列表。
摘要
云有可能为您的小型企业提供许多优势。它可以减少资本支出方面的启动成本,从而让你有机会与更大的企业竞争。由于可以从更多的位置访问您的数据,您可以灵活地工作。与同事合作也很简单。可以将您的数据库发布到云中,并在数据库级别利用这些优势。只要您意识到您对良好互联网连接的依赖性,并准备好对您在数据安全中的角色负责,云对您的小型企业来说将是无价的。
十九、搜索在线数据库
许多小企业在政府和商业在线数据库中搜索有关法律、拨款和研究领域的信息。有效搜索在线数据库的关键是熟悉搜索技术,这些技术可以应用于几乎任何数据库,包括文章数据库和在线图书馆目录。理解这些技术很重要,因为搜索在线数据库与使用网络搜索引擎有点不同。
在线数据库的外观或用户界面没有标准化的格式。例如,图书馆数据库中的记录由包含特定书目信息的字段组成,如作者、标题、期刊标题、出版商、出版日期/年份、主题等。一个法律案例的数据库将会完全不同。此外,一些简单的特征,如区分大小写,在不同的数据库之间可能会有所不同。
然而,大多数数据库提供类似的搜索功能以及帮助内容和/或搜索提示。本章涵盖了在线数据库中常见的功能。您还将学习如何构建您的搜索方法,并查看 Cards for Everyone Inc .数据库中的一个示例。
数据库功能
为了有效地进行搜索,熟悉数据库的特征非常重要。您通常可以从帮助页面中做到这一点。以下部分总结了关键工具。大多数数据库也有一个基本的搜索功能,这是我们的出发点,和一个高级搜索功能。
基本搜索
基本搜索框通常搜索一个字段。基本搜索有助于找出有多少参考文献与你的关键词相关,让你知道还需要做多少工作。当您运行已知项目搜索时,它也很有帮助,例如,当您知道您要搜索的确切标题时。
高级搜索
高级搜索功能使您能够在潜在参考数量很大时创建更有针对性的搜索。您可以在多个字段中同时使用多个搜索词进行搜索。当来自多个字段的信息可以帮助您找到感兴趣的项目时,高级搜索也很有用,例如将出版商的名称与主题结合起来。
布尔运算符:与、或、非
当你想要组合搜索词时,你需要使用布尔运算符或连接器。这些常用于高级搜索模式。
AND 运算符
AND 运算符将检索内容中提到所有术语的结果。例如,“猫和狗”搜索将返回内容中包含猫和狗的所有结果。使用和通常会检索较小的结果集。换句话说,它缩小了搜索范围,因为它排除了只提到猫、只提到狗或者既没有猫也没有狗的任何结果的返回。
在许多(但不是所有)数据库中,和是隐含的,自动放在搜索词之间。
OR 运算符
在搜索词之间使用 OR 运算符将检索到提及任一词的结果。例如,“猫或狗”搜索将返回所有符合以下条件的结果:
- 包含猫和狗
- 只包含猫
- 只包含狗
使用或通常会检索更大的一组结果。换句话说,它扩大了搜索范围。OR 在您搜索处理相同基本概念的术语时特别有用。
NOT 运算符
如果要排除术语,可以使用布尔 NOT 运算符。例如,“猫不是狗”搜索将返回包含猫而不是狗的所有结果。这具有缩小搜索范围的效果。
表 19-1 总结了布尔搜索运算符。
表 19-1。
Summary of Boolean Operators
| 操作员 | 例子 | 对搜索的影响 | | --- | --- | --- | | 和 | “猫”和“狗”:包含单词“狗”和“猫”的所有结果 | 缩小搜索范围 | | 运筹学 | “猫”或“狗”:包含“猫”和“狗”的所有结果,仅包含“猫”和“狗” | 扩大搜索范围 | | 不 | “猫”不是“狗”:包含“猫”而不是“狗”的所有结果 | 缩小搜索范围 |组合运算符
数据库通常将 and 作为主操作符,并将首先用 AND 将概念连接在一起。如果在搜索中使用 AND 和 OR 运算符的组合,请用括号将要“或”运算的单词括起来。例如,(狗或猫)和(犬或猫)。
截断和通配符
大多数在线数据库还不够完善,无法自动搜索一个单词的所有变体。例如,包含“慈善”的搜索会错过包含“慈善家”、“慈善事业”等的结果。截断有助于缓解这个问题。要使用截断,请输入单词的词根并将截断符号放在末尾。数据库将返回包含该词根的任何结尾的结果。截断符号因数据库而异。例子包括:*、?, !、%和$。
例如,如果您搜索术语“菲兰特?”在在线数据库中,您可以检索包含以字母 philant 开头的任何单词的结果,包括:philanthropy、philantic、philantist 等。图 19-1 显示了在美国国会图书馆数据库( http://catalog.loc.gov/
)中搜索最近五年出版的书籍中的前三本书,并带有术语“菲兰特?”在他们的标题或字幕中。对于前两本书,《菲兰特?出现在他们的书名和第三本书“菲兰特?”出现在其中一个字幕里。
图 19-1。
Keyword search based on “philant?” for books published in the last five years in the Library of Congress database
在单词末尾过早截断会将搜索范围扩大到不相关的主题。例如,将单词 philanthropy 截短为“phil?”会捡起很多与慈善事业无关的词汇(比如市侩、哲学、菲律宾)。图 19-2 显示了图 19-1 中使用“菲尔而不是“菲兰特?”。你可以看到所有的书都与哲学有关,而不是慈善事业。
图 19-2。
Keyword search based on “phil?” for books published in the last five years in the Library of Congress database
如果一个单词以不同的方式拼写,但意思相同,通配符就很有用。比如颜色和色彩。通配符通常用符号代替单词中的一个字母。例如,在 colo*r 上搜索将返回所有包含 color 和 color 的结果。
短语和邻近运算符
尽管结果中包含了您的所有搜索词,但它们可能不会以您想要的方式连接起来。例如,搜索“小型企业和数据库”可能在某些数据库中作为固定短语进行搜索,或者在其他数据库中被翻译为“小型企业和数据库”,这些词在结果中单独出现。
大多数数据库允许您指定将相邻的单词作为短语进行搜索。在搜索词周围使用括号或引号是引发短语搜索的一种常见方式。您需要查阅正在使用的数据库的帮助页面,以获得具体的说明。
邻近运算符是另一种指定要搜索的单词彼此在一定距离内的方式。这使得您的搜索更精确(和更窄)。近似运算符也因数据库而异,但一些常见的运算符包括:
w# = 'with '。指定单词以给定的顺序出现,中间有固定数量的单词。用中间可能出现的最大字数替换#号。如果没有给出数字,它指定一个精确的短语。例如:
- 小型企业(搜索短语“小型企业”)
- w3 总统奥巴马(搜索“奥巴马总统”、“奥巴马总统”、“奥巴马总统”等。)
n# = '近'。指定单词可以按任何顺序出现。用中间可能出现的最大字数替换#号。例如:
- 就业 n3 法律(搜索“就业法”,“就业法”等。)
限制搜索
许多数据库都有限制,通过指定的参数(例如,日期、格式、材料类型、语言或位置)来控制返回的结果。此功能有助于消除超出所选限制的结果,例如将搜索限制为最近五年出版的书籍。
搜索方法
找到正确的信息不是偶然发生的。创建策略对于成功的搜索结果至关重要。下一节将介绍一个好的策略,并包括一个来自 Cards for Everyone Inc .数据库的示例。
识别关键搜索词
通常,进行一次好的搜索最困难的部分不是使用数据库本身,而是确定使用哪些搜索词以及使用什么组合。
首先,用一个句子或一个问题写下你要寻找的信息。这本身不太可能是一个好的数据库搜索,因为可能会有一些相关的信息你会错过,只是因为它的措辞略有不同或用不同的词表达。
你的句子可能只包含一个想法,或者更有可能包含几个你需要考虑的想法。
- 将你的句子分成一到三个单词的想法和关键词。
- 在每个想法中,确定适当的单词或短语,包括意思相同的单词和短语、广义术语、相关术语、狭义术语,以及必要的多种拼写。
- 尝试从你认为答案应该如何措辞开始,使用这些词作为你的搜索词集的一部分。
- 随着相关术语的出现,在搜索过程中修改列表。
开始搜索
本节列出了帮助您开始搜索的步骤。
从一般性搜索开始。如果您从一个复杂的搜索开始,您可能会检索到非常少的结果。从一般搜索开始,然后根据需要缩小搜索范围,这样更有意义。
问自己以下问题:
- 我能使用更好的术语吗?
- 我需要缩小或扩大搜索范围吗?
如果你觉得有更好的搜索词可以使用,请参考你在上一节中列出的列表。
如果您需要缩小搜索范围以检索更少的结果,请考虑:
- 添加术语
- 将限制应用于特定领域
- 使用布尔运算符,如 AND 和 NOT
- 使用更多限制的截断/通配符(例如,“philant?”而不是“菲尔?”)
- 使用措辞
- 使用数字较小的近似运算符(例如,用 w2 代替 w3)
如果您需要扩大搜索范围以检索更多结果,请考虑:
- 删除术语
- 使用布尔 OR 运算符
- 使用限制较少的截断/通配符(例如,“charit?”而不是“查丽塔?”)
- 删除措辞
- 使用较大数值的近似运算符(例如,用 w3 代替 w2)
最重要的是,在寻找过程中要灵活和坚持。如果一个术语不起作用,尝试不同的术语。永远不会有一个完美的搜索,可能需要几十次搜索才能检索到所有必要的信息。
如果你的搜索一无所获,考虑加入一个相关的留言板,提出你的问题,或者甚至联系一个专业人士协会。会有很多人在你的领域有专业知识,他们可能会给你指出正确的方向。
向公共图书馆的咨询人员寻求帮助也是非常宝贵的。
人人卡公司:示例
假设人人贺卡公司的帕特想扩大业务。她想找到更多潜在的资金来源。
她开始写下她的研究句子:
“小企业融资”
她将此分为两个主要观点:
- “小型企业”
- “资金”
为了开始识别意思相似的单词,她在网络搜索引擎中输入小企业资金(没有引号,因为她不想指出短语)。这有助于她将每个想法与下列意思相似的单词匹配起来:
- “小型企业”——初创企业、初创公司、初创企业、中小企业、公司
- “资金”——投资、赠款
她首先在 http://catalog.loc.gov/
访问国会图书馆数据库。
首先,她对“小企业”融资进行了简单的关键字搜索。屏幕的放大部分如图 19-3 所示。
图 19-3。
Keyword search on the Library of Congress online catalog
搜索得到 59 个结果。Pat 注意到其中一些非常旧,并担心这些信息可能太旧而无用。她通过使用排序工具从最新到最早对结果进行排序来限制搜索。她找到了一些最近出版的关于众筹和撰写成功标书的有用书籍。
然而,她想将搜索范围扩大到具有类似含义的其他术语,看看她是否错过了任何有用的信息。她使用高级搜索,将“小企业”设置为短语,并使用截短的“基金?”另一个缩写词“投资?”指示“这些中的任何一个”(而不是它们两个一起)。她还将搜索限制在过去五年内发表或创作的结果。搜索设计如图 19-4 所示。该搜索产生 187 个结果。帕特按日期顺序把它们从最新的到最早的分类,找到了更多有用的材料。她觉得已经有足够的证据开始调查了。
图 19-4。
Advanced keyword search on the Library of Congress online catalog
摘要
在线数据库是一个重要的信息来源。为了最大限度地利用它们,花点时间熟悉通用搜索工具并阅读相关数据库的帮助页面是值得的。
搜索数据库只是查找所需信息过程的一部分。你需要花些时间来计划你的搜索,并找出一些相似的搜索词。规划你的搜索会给你找到你要找的东西的最好机会。
二十、培训你的员工
为了让您的企业从数据库中受益,您的员工必须接受如何有效使用数据库的培训。正如您所看到的,对数据库的全面理解不仅仅是操作数据库本身。数据保护立法、数据清理程序、数据收集方法、数据库维护和数据分析以及许多其他问题也很重要。在设计员工培训计划时,你需要考虑所有这些方面。本章详细介绍了培训方法。员工培训应确保总有人能够处理任何可能出现的问题:仅仅依靠一个人是不安全的政策。
如何开始
你需要从一开始就有耐心,因为许多员工需要时间来学习新技术。试着从一个刚遇到数据库的人的角度来看这个数据库。确保认可成功,以保持团队的热情高涨。
也许从向所有将要使用数据库的人解释为什么采用它以及你希望它如何帮助业务开始。向您的员工保证,他们都将有机会在适合他们特定学习要求的时间内熟悉数据库。此外,鼓励不把数据库视为己任的员工采用数据库的最佳方式之一是关注他们将获得的直接优势。第一章中列出的益处可能会有所帮助。
考虑提供一个测试数据库,例如您设计的数据库的副本,供员工使用。
实际培训课程
如果您正在执行培训课程,请避免解释任何与操作数据库不直接相关的技术内容。试着把你的培训分成短的部分,让观众容易理解。
如果您只有一次培训:
- 提供数据库的总体描述
- 涵盖需要理解的关键概念
- 涵盖一个案例研究
- 为如何解决各种任务的问题预留额外的时间
每个人的学习速度都不一样,将你的培训演示记录下来并保存起来可能会有所帮助,以便员工在需要时可以再次观看。一种方法是使用 Slideshare 之类的网站,它可以让你上传幻灯片并录制画外音以与它们同步(如果你想添加隐私设置,你需要支付订阅费;否则,就是免费的)。除了 Slideshare 之外,还有许多其他方法可以让你创建和分享演示文稿,包括 MS PowerPoint Online、Office Sway 和 Google Slides。
您的员工可能分布在几个地方,因此一次性将他们召集起来进行培训是不切实际的。你可以选择在线会议,而不是提供预先录制的演示。这是交互式的,因此可以根据您的员工的需求进行定制。共享幻灯片、文档等的在线工具可以通过电话线与音频组件结合,以低成本和简单的方式将员工聚集在一起进行“现场”培训。如果你只培训几个人,像 WebHuddle、Yugma 和 Adobe Connect 这样的工具会提供免费账户。其他网站,如 GoToMeeting、WebEx 和 ReadyTalk,为更实质性的培训项目提供了一种低成本的方法。唯一的警告是确保你知道电话费用有多高。
实践培训
远程培训您的员工可能不会引起他们的兴趣,也不会为他们提供学习如何使用数据库所需的技能。仅仅听演讲和看网上资料可能无法提供他们需要的实际培训。考虑提供一个教程,让您的团队按照自己的进度完成测试数据库上的任务。这是学习的理想环境。如果他们确信当问题出现时你会在那里回答,他们将能够以自己的速度前进。
文件
在您的团队了解新数据库时,包含大量屏幕截图和其他视觉效果的帮助指南是一个非常有用的工具。文档应该包含数据库中使用的所有进程和过程的详细信息。
你的团队需要学习三种主要技能:
- 所有数据库共有的技能
- 特定于您正在使用的数据库包的技能
- 与您实施的数据库设计相关的技能
关于前两项技能的信息在其他地方有详细的文档记录,您不希望花费太多的文档来重复它:对主要问题的总结就足够了。大多数数据库包都有包含其特定功能的帮助页面。例如,当您在 MS Access 2013 中打开帮助指南时,您会看到一个热门类别列表和一个搜索工具,您可以输入关键字来查找主题。你可以列一个建议章节的清单。网上有很多教程。例如,AccessLearningZone.com 提供了一些关于 Access 的免费教程,可能会有用。当你的员工考虑更广泛的数据库主题时,你可能会发现本书的不同章节很有帮助。
尝试将你的材料分开,以反映你认为你的团队会如何使用该系统。那些寻找单一任务的人应该能够找到所需的帮助,而不必阅读大量不相关的内容。探索超链接、内容列表等的使用。
如您所见,您的数据库不太可能是静态的。因此,以电子形式保存文档以便于访问和更新是有意义的。您的团队应该意识到文档是不断变化的,最后一次更新的日期应该在指南的开头就明确。
不管你的文档有多广泛和仔细,你总是会遇到你没有涉及到的问题。当您编写文档时,您将尽最大努力解决您的团队需要的问题。由于您可能已经与数据库打交道有一段时间了,并且不再用新的眼光看待它,所以肯定会有一些重要的因素被您忽略。因此,尽快收集反馈并相应调整指南是非常重要的。内联网上的可编辑评论文档可能就足够了。您还可以在文档的开头提供一条消息,要求您的团队通过自动电子邮件链接将任何意见直接发送给您。
你可以要求工作人员在没有任何指导的情况下尝试使用数据库,除了回答他们提出的问题。在此过程中,您可以在问题出现时做笔记,并确保文档涵盖了这些问题。
逐步采用数据库
如果您的团队能够逐步熟悉数据库,他们可能会更容易接受数据库。例如,在对他们进行培训之后,您可以将数据从电子表格一次一个或两个表地移动到数据库中。一旦每个人都有机会熟悉现有的表格,您就可以添加更多的电子表格。一个合理的起点是将客户联系数据移动到数据库中。
值得注意的是,电子表格和数据库可以一起使用,直到所有员工都感到舒适。实现这一点最明显的方法是允许员工对电子表格进行更改,然后您可以使用这些更改定期更新数据库。这个过程可以通过几个简单的步骤来实现,如下所示:
Back up your database. Import the changes from the spreadsheet into your database into a table with identically named columns to that of the table you wish to update. Here, we use an example of a table named Update_Customers to update the FirstName and LastName columns of the Customers table in the Cards for Everyone Inc. case study. Note Importing data into a database table is covered in the appendix to the book. Create a relationship between the Update_Customers table and the Customers table using the unique identifiers. Note The creation of relationships between tables is covered in the appendix to the book. Use a query to select the rows from the table you wish to update. In this case, your query would look like Figure 20-1.
图 20-1。
Query showing the FirstName and LastName columns of the Customers table in the Cards for Everyone Inc. database Note Creating a simple query is covered in the appendix to the book. Run the query (using “!” on the Design tab) and make sure that the returned rows are the ones you want to update. If all is well, you can convert your query to an Update query. To do this, select the Design tab and then select Update from the Query Type area of the top toolbar. You will see the Update To row appear in the grid at the bottom of your query design. To update values in the FirstName and LastName columns of your Customers table to match those of the Update_Customers table, place the corresponding column references:
[更新 _ 客户]。[名字][更新客户]。[姓氏]
in the Update To part of the grid, as shown in Figure 20-2.
图 20-2。
Update query renewing the FirstName and LastName columns of the Customers table with the corresponding columns of the Update_Customers table Run the query in the usual way. You will asked if you are sure you want to update the rows. Also, your database may have been “disabled” if you have not set up a safe area for it and, if so, you will need to “enable” it using the button that appears on the message bar.
这种方法允许您的电子表格保持正常运行。同时,工作人员可以打开数据库,查看数据是如何存储的,并熟悉如何访问数据。然后,您可以为从电子表格到数据库的最终切换设置最后期限。
大局
员工培训不仅仅是教员工直接操作数据库。正如您在本书中所看到的,数据库主题涵盖了数据处理和数据库管理的许多方面:您团队中的某个人必须始终接受培训以承担责任。然而,大多数工作人员不需要接受所有这些技能的培训。例如,没有必要向将要收集和输入数据的职员教授数据分析。概括地说,本书涵盖的基本领域有:
- 数据保护法和数据安全
- 数据收集
- 数据清理
- 数据库维护
- 搜索数据库
- 分析您的数据
- 写报告
- 根据报告采取行动
- 根据外部数据请求采取行动
- 存档数据库
- 搜索在线数据库
你需要确定谁需要哪方面的培训。然而,任何处理个人数据的人都需要了解数据保护法,并且需要知道如何设置强密码。
您还需要提供关于数据输入的强有力的指导。在可能出错的地方,你需要提供具体的指示,这样每个人的行为才会一致。例如,每个人都应该清楚如何处理诸如缺少值这样的问题,以便数据是明确的。例如,在输入某人地址的州部分的情况下,使用术语“无”来表示缺少数据是令人困惑的,因为它可能表示客户住在国外。诸如“未知”之类的条目会更合适。
当几名员工在输入数据时,例如在 Connecting South Side 的案例研究中,有一个将员工姓名首字母链接到记录的列是很有用的。这样每个人都知道该联系团队中的哪个成员。此外,任何负责清理数据的人都将能够发现哪里经常出错以及是谁出错,并且能够提供反馈。
案例研究:连接南区的员工培训类型
下面的例子说明了培训要求如何针对不同的员工。必要的培训按上一节中的每个要点依次进行评估:
- 数据保护法和数据安全:每个人都应该关注。这一点对于存储着询问者个人生活信息的 Connecting South Side 来说尤为重要。
- 数据收集:几乎所有团队成员都参与数据收集,因为他们接受查询并直接从中创建数据库记录。
- 数据清理:这应该由所有接触数据库的工作人员负责,因为任何输入数据的人都必须意识到他们工作的质量非常重要。有人将需要直接负责清理数据库,并需要在相关技术的培训。需要另一名工作人员作为后备。
- 数据库维护:每天必须有一个人在办公室进行必要的数据库维护,例如备份数据库。这意味着一个人应该承担主要责任,其他人可以在必要时介入,比如在休假、生病或离职的情况下。
- 搜索数据库:连接南区的所有工作人员需要能够搜索 enquirer 数据库,以便找到当前的案件。还必须确定与当前案例相似的以往案例,以避免重复工作。这些技能可以从一两个团队成员开始获得,但最终应该成为每个人的第二天性。
- 分析数据:通常只有经理需要能够分析数据,因为他或她将会写报告。然而,在紧急情况下,必须有另一名受过足够培训的工作人员介入。这些报告对于“连接南方”的工作至关重要,既可以让相关机构知道当前资助的目的和目标正在实现,也有助于为未来的赠款进行投标。
- 写报告:同样,在大多数情况下,只有经理需要能够写报告。但是,如果经理由于任何原因不在,就需要一个后备人员。
- 对报告采取行动:第十五章展示了对报告采取行动需要对数据库进行根本性的改变。这需要比日常操作数据库更多的技能。除了被认为设计和实施了数据库的管理人员之外,其他任何人都不太可能受过足够高的培训来根据报告采取行动,尽管由另一名工作人员学习相关技能是谨慎的。
- 根据外部请求采取行动:第十六章展示了擅长搜索和设计查询的员工可以处理外部的信息请求。没有必要让每个人都接受这种程度的培训,但由于这种要求可能每天都会出现,办公室每天至少应有一名工作人员接受过所需的培训。
- 数据库存档:与维护一样,需要一名全职(或同等职位)工作人员负责将数据库存档作为其职责的一部分,还需要一名全职(或同等职位)备份人员。
- 搜索在线数据库:所有工作人员都需要能够搜索在线数据库,寻找能够帮助查询者的组织信息。
摘要
如果要成功采用您的数据库,量身定制的员工培训是必不可少的。工作人员的职责和学习进度会有所不同。通过提供演示文稿、实践教程、文档、录制材料和测试数据库的组合,您的员工将能够以合理的速度学习必要的技能。
二十一、附录
本附录的目的是涵盖以下内容的最初步骤:
- 创建数据库
- 创建表格
- 对表中的一列数据进行排序
- 创建表之间的关系
- 创建查询
- 创建表单和报表
- 使用外部数据
将使用两个数据库包来演示这些操作:MS Access 2013 和 LibreOffice 5 Base。对于初学者来说,这两个软件包都非常简单,因为几乎不需要任何编程知识。并非所有的数据库都是如此:例如,MySQL 是一个流行的数据库包,但是需要对 SQL 编程语言有很好的理解,这不在这里讨论。
本书通篇使用 MS Access 2013 来提供示例。之所以选择它,是因为它被广泛使用,因此为人所熟悉。MS Access 曾经随 MS Office 一起提供,但现在情况不同了,除非你购买更贵的软件包。图书馆是免费的,服务也一样好。
本附录旨在向您介绍数据库的基本功能。它并不打算是全面的,而应该被视为在本书中描述的数据库示例之前完成的步骤,并使您能够构造和使用数据库。MS Access 和 LibreOffice 都提供了帮助指南,除了此处提供的基本信息之外,还可以带您了解更多信息。
这两个包有许多相似之处,在某些部分将被放在一起考虑。你可能会惊讶于这两个包是如此的相似。
从头开始创建数据库
与任何文字处理器文件或电子表格一样,您需要能够创建一个新文件。MS Access 2013 和 LibreOffice 5 Base 提供模板来帮助您。然而,这里我们解释如何从头开始创建一个数据库。
MS Access 2013
首先,双击访问图标。图 A-1 显示了将要出现的部分输出。
图 A-1。
Initial MS Access 2013 interface
单击空白桌面数据库(左上第二个图标)。
在出现的文件名框中输入数据库的名称,如图 A-2 所示。
图 A-2。
The File Name box for your new database in MS Access 2013
您可以使用 Access 在“文件名”框下显示的默认位置,或者单击文件夹图标选择一个位置。
单击创建。您将看到一个带有新表的新 MS Access 2013 数据库。请注意顶部的选项卡:主页、创建、外部数据和数据库工具。这些将在本章中提及。表格将在下一个主要部分讨论。
书架 5 Base
双击图书馆图标。在左侧菜单中点击基础数据库图标,如图 A-3 所示。将打开数据库向导。
图 A-3。
The LibreOffice 5 main interface
默认选项是创建一个新的数据库,因此单击 Next。默认选项很好,所以单击 Finish。系统会提示您为新数据库选择一个名称和位置,如图 A-4 所示。
图 A-4。
Select a name and location for your new database in LibreOffice 5 Base
单击保存。
数据库界面将打开三个面板:
- 数据库面板是您找到数据库对象的地方
- 在“任务”面板中,您可以看到每个对象的可能任务
- 主工作区根据“数据库”面板中的选择而变化
创建表格
第七章中介绍了表格。图 A-5 ,重述自第七章,显示了如何在 Cards for Everyone Inc .数据库中设置 Customers 表的数据类型。图 A-6 ,同样转述自第七章的,显示了填充了三个项目的客户表。本节介绍如何创建表,这是设置数据类型和添加数据之前的步骤。
图 A-6。
Adding data to a new table in MS Access 2013
图 A-5。
Setting data types for a new table in MS Access 2013
两个数据库包都有一个表的两个视图,如下所示:
- 设计视图:列(字段)名称及其数据类型的视图。图 A-5 显示了客户表的设计视图。
- 数据表视图:表中数据的视图。图 A-6 。显示“客户”表的数据表视图。
MS Access 2013
当您第一次打开数据库时,您将在数据表视图中看到一个空白表。这可用于您创建的第一个表。
添加表时,单击“创建”选项卡,然后单击“表”。
在输入数据之前,您需要设置数据类型。这是在“设计”视图中完成的,您可以通过单击“主页”选项卡,然后依次选择“视图”和“设计视图”来访问该视图。
Note
从现在开始,操作序列将采用以下格式:主页➤视图➤设计视图。
在“另存为”框中命名该表。
现在您已经准备好设置您的列的类型,如图 A-5 所示。
通过单击相关单元格并使用下拉菜单来选择数据类型。当您选择好数据类型后,选择主页➤视图➤数据表视图并输入您的数据,如图 A-6 所示。
正如您在第七章中了解到的,您需要一个惟一的标识符(也称为主键)用于您的表。这里选择了 CustomerID。在设计视图中,通过旁边的钥匙符号可以看到 CustomerID 是主键(如图 A-5 )。您可以通过以下方式将不同的行设置为唯一标识符:
Highlighting the row (by clicking on the area to the left of the Field Name column) Right-clicking the highlighted area and selecting Primary Key from the drop-down menu that appears Save your table when you have finished adding columns and data. You can do this by using Ctrl+S.
基本书店 5
从数据库区域选择表。
从“任务”面板中,选择“在设计视图中创建表”。(如果您愿意,可以使用向导来创建表,并按照说明进行操作。)
使用设计视图键入列名及其数据类型。如果单击单元格,数据类型列中将出现数据类型的下拉菜单。选择最适合您的数据的类型。
您现在需要设置一个唯一的标识符(也称为主键)。为此:
Highlight the row (or rows) that will make up the unique identifier by clicking in the area to the left of the Field Name column Right-click the highlighted row and select Primary Key from the bottom of the menu that appears Give the table a name and save the design using Ctrl+S.
当您关闭设计视图时,您会在任务面板的底部看到您的表。双击该表,在数据表视图中打开它。然后您可以添加您的数据。
表之间的关系
关系在第七章中介绍。最简单的关系就是一对一的关系。在第七章中给出的例子是雇员和雇员之间的关系,并在图 A-7 中重述。关系的类型—无论是一对一、一对多还是多对多—都是由数据库包自动创建的。以下两节介绍了在 MS Access 2013 和 LibreOffice 5 Base 中创建表之间关系的分步过程。
图 A-7。
A one-to-one relationship between tables
MS Access 2013
单击数据库工具选项卡。点击关系。
要向 relationships 区域添加新表,右键单击任何空白区域,从出现的菜单中选择 Show Table,然后选择一个相关的表。然后单击添加。继续添加表格,直到完成为止。然后单击关闭。
如果要从“关系”区域中删除任何表,请右键单击它的顶部,然后从菜单中选择“隐藏表”。
创建关系时,从一个表的选定列(通常是唯一标识符)拖动到相关表中的匹配列。将出现一个对话框,允许您设置条件,如级联删除,如图 A-8 所示。
图 A-8。
Creating a relationship between two tables in MS Access 2013
您可以通过单击描述关系的线(它将被突出显示)然后右键单击并选择删除来删除关系,如图 A-9 所示。
图 A-9。
Deleting a relationship between tables in MS Access 2013
书架 5 Base
单击工具选项卡。从出现的菜单中选择关系。在“添加表”对话框中,双击每个感兴趣的表。单击关闭按钮。
创建关系时,从一个表中的一列(通常是唯一标识符)拖到相关表中的一个匹配列。
您可以通过单击描述关系的线条(它将突出显示)来编辑关系,然后右键单击并选择编辑。你就是这样给出删除级联等指令的,如图 A-10 所示。
图 A-10。
Creating a relationship between two tables in LibreOffice 5 Base
要删除一个关系,点击描述该关系的线条,点击右键,然后选择删除,如图 A-11 所示。
图 A-11。
Deleting a relationship between tables in Libre Office 5 Base
对列中的数据进行排序
在第十二章的中解释了如何对表格中的一列数据进行排序。在任一数据库包中实现这一点的最直接的方法是在数据表视图中打开表,然后按照下列步骤操作。
在 MS Access 2013 中:
Right-click any cell in the column of data you wish to sort Select Sort A to Z or Sort Z to A from the menu that appears
在 library 5 base 中:
Highlight the whole column you wish to sort by clicking its name at the top From the toolbar at the top, select one of the two sort options, either ascending sort (A above Z with a downward arrow alongside) or descending sort (Z above A with a downward arrow alongside)
问题
本节旨在演示如何在 MS Access 2013 和 LibreOffice 5 Base 中设置和运行查询。第一章介绍了一个统计每类卡片数量的查询。这再次显示在图 A-12 中。阅读完这一部分后,您将能够设置并运行这个查询,产生如图 A-12 所示的输出。
图 A-12。
Sample query from the Cards for Everyone Inc. database
该查询包括两个步骤:
- 对卡片的类别进行分组。
- 计算每组卡片的数量。
与表一样,查询可以在数据表视图(查询的输出,如图 A-12 所示)和设计视图中查看。
整本书都介绍了查询的例子。在每种情况下,都会显示查询的设计和输出。这意味着,如果您知道如何设置查询,您将能够运行所有的示例。
要了解本书中未涉及的说明,如可用作函数/标准的说明范围,请访问 MS Access 2013 或 LibreOffice 5 Base 的帮助页面,您会找到一个全面的列表。
两个数据库包以相似的方式处理查询。在任一包中,您都可以保存查询,以便以后使用。
在 MS Access 2013 中设计和运行查询
要打开查询的设计视图:
-
单击创建选项卡。
-
从查询区域中,选择查询设计。(如果您愿意,可以选择查询向导并按照说明进行操作。)
-
双击“显示表格”框并关闭该框,从中选择产品。
-
Choose Category from the Products table by double-clicking on it. You will see Category appear in the grid at the bottom of the screen. Each of the labels on the far left applies to the cell in the grid of the adjacent row, as shown in Figure A-13.
图 A-13。
The first step of query design in MS Access 2013 for the query shown in Figure A-12
若要指示查询对类别进行分组,请选择“设计”选项卡,然后选择“ʃ(总计)”。您将看到网格中出现一个总计部分,默认为分组依据。这是您正在寻找的命令。
要运行查询,请选择设计表,然后选择 run(用红色感叹号“!”表示)).这产生了如图 A-14 所示的输出。
图 A-14。
Output from Step 1 of the query in Figure A-12 using MS Access 2013
输出给出了四组类别,但没有告诉您每组包含多少张卡片。要确定每组中有多少张卡,您需要发出第二个命令,如下所示:
-
像以前一样运行查询。您应该得到如图 A-12 所示的输出。
-
选择主页➤设计视图,返回到设计视图。
-
Add a second command on the Categories column by double-clicking on the Categories column shown in the Products table on the Queries area. You will see a second Category appear in the grid at the bottom of the screen, as shown in Figure A-15.
图 A-15。
Step 2 of the Design for the Query in Figure A-12 Using MS Access 2013
-
您需要将出现在汇总行中的分组依据更改为计数。为此,单击总计单元格并从下拉菜单中选择计数,如图 A-15 所示。
在 LibreOffice 5 Base 中设计和运行查询
要打开查询的设计视图,请按照下列步骤操作:
-
在主窗口中,单击左侧列表中的查询图标。
-
选择“在设计视图中创建查询”。(也可以使用查询向导;不言自明。SQL 视图超出了本书的范围,因为本书没有涵盖 SQL 语言。)
-
双击“显示表格”框并关闭该框,从中选择产品。
-
Select Category from the Products table by double-clicking on it. You will see Category appear in the grid at the bottom of the screen. Each of the labels on the far left applies to the cell in the grid of the adjacent row, as shown in Figure A-16.
图 A-16。
The first step of query design in LibreOffice 5 Base for the query in Figure A-12
若要指示查询对类别进行分组,请按照下列步骤操作:
- 单击查询网格的函数单元格。
- 从下拉菜单中选择组。
要运行查询,请单击图 A-16 中所示的图标。您应该得到如图 A-17 所示的输出。
图 A-17。
Output from step 1 of the query in Figure A-12 using LibreOffice 5 Base
为了计算每组中卡片的数量,按照以下步骤在 Categories 列上添加第二个命令:
- 双击查询区域的产品表中显示的类别列。您将看到第二个类别出现在屏幕底部的网格中。
- 通过单击第二个 Category 下的单元格,并从下拉菜单中选择 Count,将 Count 应用于函数行。
您的设计视图应该如图 A-18 所示。
图 A-18。
Step 2 of the design for the query in Figure A-12 using LibreOffice 5 Base
当您运行设计视图时,您将得到如图 A-19 所示的输出,它对应于如图 A-12 所示的输出(来自 MS Access 2013)。
图 A-19。
Output in LibreOffice 5 Base from running the query in Figure A-18
表单和报表
在本书中没有详细使用表格和报告。然而,开始使用它们非常容易,因为 MS Access 2013 和 LibreOffice 5 Base 都提供了有用的向导。您可以使用表和查询中的数据来创建窗体和报表。
在 MS Access 2013 中,请按照下列步骤操作:
Click the Create tab. From the Forms area, choose Form Wizard or from the Reports area, choose Report Wizard.
在 LibreOffice 5 Base 中,按照下列步骤操作:
Select Forms or Reports. Select the respective Wizard from the list of options that appears.
您可以基于多个表生成表单,这对于将数据输入到多个表中以及在数据库中搜索数据都很有用。报告使文档可以从数据库表或查询中设计出来,这些表或查询可以以电子形式轻松共享,也可以通过打印输出在远离计算机的地方查看。
外部数据
使用外部数据很重要,因为它可以将数据读入数据库(导入),而无需手动输入。这也意味着数据可以从数据库中读出(导出),而不需要重新输入。如果要执行数据库包中没有的操作,例如电子表格中可用的操作,这一点非常重要。
MS Access 2013 中的外部数据操作
以下部分讨论了使用 MS Access 2013 导入和导出数据的必要步骤。
导入数据
要将数据移入数据库(例如,从另一个数据库或电子表格),请按照下列步骤操作:
- 单击顶部工具栏上的外部数据选项卡。
- 在“导入和链接”部分,单击要导入的数据格式。如果您看不到正确的格式,请点按“更多”。您可以从其他 Access 数据库导入表,从 Excel 电子表格导入数据,等等。
按照“获取外部数据”对话框中的说明进行操作,如图 A-20 所示。您可以将数据追加到现有的表中,也可以创建一个全新的表。文件的列标题必须与导入源表的列标题相同。此外,您不能通过复制任何值来违反唯一标识符(主键)。
图 A-20。
Importing data into MS Access 2013
导出数据
要将数据移出数据库(例如,移至另一个数据库或电子表格),请按照下列步骤操作:
- 在左侧列表中单击一次,突出显示要导出的数据库对象。
- 单击顶部工具栏上的外部数据选项卡。
- 从工具栏的导出部分选择要导出到的文件类型。
- 选择您的目标文件。
- 按照说明操作。
图 A-21 显示了将 Cards for Everyone Inc .数据库中的产品表导出到 MS Excel 文件的示例。
图 A-21。
Exporting data from MS Access 2013
书架 5 Base
LibreOffice 使用其电子表格 Calc 来导入和导出数据。由于假设每个阅读本书的人都熟悉电子表格,本节不包括截图。
导入数据
要将数据移入您的数据库(例如,从另一个数据库或电子表格),您必须首先将数据导入 Calc。Calc 接受逗号分隔的文本文件。CSV 文件。这些可以在 Calc 中通过选择文件➤打开来打开。
确保从中导入数据的文件的列标题与数据将被移入的数据库对象的列标题相匹配。
- 打开所需数据库类型的基本文件。
- 请使用“数据库向导”创建一个新的 base 文件,或者打开一个非只读的现有 Base 文件。
- 打开包含要导入到 Base 的数据的 Calc 文件。
- 选择要复制到 Base 的数据,包括第一行的列名。
- 选择编辑➤副本。
- 在基本窗口中,单击“表格”以查看表格。
- 在基本窗口中,选择编辑➤粘贴。
将出现“复制表格”对话框。您可能需要选中“创建主键”框。
导出数据库中的数据
要将数据移出数据库(例如,移至另一个数据库或电子表格),请按照下列步骤操作:
- 打开包含要导出的数据库表或查询的数据库文件。
- 在 Calc 中,选择文件➤新➤电子表格。
- 在 Base 窗口中,右键单击要导出的表的名称,然后选择“复制”。
- 在新的 Calc 窗口中单击单元格 A1,然后选择编辑➤粘贴。
- 现在将数据保存或导出到您选择的文件类型。
摘要
本附录填补了书中提供的示例与从头创建数据库、表和查询所需的步骤之间的空白。附录还介绍了表关系、如何对表中的列进行排序以及如何导入和导出数据。它还提到了使用向导创建表单和报告。以 MS Access 2013 和 LibreOffice 5 Base 两个数据库包为例。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律