面向小型公司的数据库教程(三)

原文:Databases for small business

协议:CC BY-NC-SA 4.0

十六、根据外部要求采取行动

到目前为止,数据库都是根据业务目标设计的。但是,如果一个请求来自一个外部来源,并以他人的目标为焦点,会发生什么呢?如何从数据库中提取适当的数据?

最后一章着眼于根据报告的结果和业务策略的变化对数据库进行永久性的修改。本章考虑在不进行永久更改的情况下回答查询。回应外部请求需要尽可能创造性地使用你熟悉的工具,包括:

  • 搜索
  • 过滤
  • 询问

您还需要能够识别何时无法用现有数据回答查询。例如,假设一个法律监管机构要求 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 两个数据库包为例。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值