运行查询

重要:  本文是由机器翻译的,请参阅免责声明。请在 此处 中查找本文的英文版本以便参考。

查询是可用来处理数据的一组指令。可以运行查询来执行这些指令。除了返回结果(进而对结果进行排序、分组或筛选)外,查询还可以创建、复制、删除或更改数据。  

本文介绍如何运行查询,并对各种查询类型进行了简要概述。本文还讨论您在运行各种类型的查询时可能遇到的错误消息,并提供解决或更正这些错误的步骤。

本文不提供关于创建查询的分步说明。

重要: 如果在禁用模式下运行数据库,不能运行动作查询 — 缩减的功能模式用于帮助保护您的数据在某些情况下访问。您可能会看到一个对话框警告,或者您可能会看到一条警告消息栏中。

有关禁用模式下,以及如何启用动作查询的详细信息,请参阅部分中,运行某个动作查询

您要做什么?

运行选择查询或交叉表查询

运行某个动作查询

运行参数查询

运行 SQL 特定查询

解决错误消息

运行选择查询或交叉表查询

使用选择查询和交叉表查询检索和呈现数据,并提供窗体和报表的数据。选择查询或交叉表查询运行时,则Microsoft Office Access 2007数据表视图中显示结果。

运行查询

  1. 在“导航窗格”中找到查询。

  2. 请执行下列操作之一:

    • 双击要运行的查询。

    • 单击要运行的查询并按 Enter。

如果要运行的查询当前在设计视图中处于打开状态,您还可以通过单击功能区(功能区是 Microsoft Office Fluent 用户界面的一部分)中“设计”选项卡上的“结果”组中的“运行”来运行该查询。

返回页首

运行动作查询

有四种类型的动作查询︰ 追加查询、 查询、 更新查询和生成表查询中删除。对于生成表查询 (其中创建新表),除非它们所基于的表中的数据对查询进行更改的操作。这些更改不能轻松地撤消,例如,通过按 CTRL + Z。如果您使用动作查询,您以后决定要未进行的更改,通常您将需要从备份副本还原数据。因此,您应始终确保运行某个动作查询之前有基础数据的最新备份。

可以通过事先预览要处理的数据来降低运行动作查询的风险。有两个方法可以实现这一点:

  • 在运行动作查询之前,在数据表视图中查看该查询。为此,请在设计视图中打开查询,单击 Access 状态栏上的“视图”,然后单击快捷菜单上的“数据表视图”。若要切换回设计视图,请再次单击“视图”,然后单击快捷菜单上的“设计视图”

  • 将查询更改为选择查询,然后运行它。

    注意: 请务必记录开始使用的动作查询类型(追加查询、更新查询、生成表查询或删除查询),以便用此方法预览数据后,可以将查询更改回该类型。

    将动作查询作为选择查询运行

    1. 在设计视图中打开动作查询。

    2. 设计选项卡的查询类型组中,单击选择

    3. “设计”选项卡上的“结果”组中,单击“运行”

运行查询

准备好运行动作查询后,在“导航窗格”中双击它,或者单击它并按 Enter。

重要: 默认情况下,Access 将禁用数据库中的所有动作查询,除非您表明您信任数据库。您可以指示您信任数据库,通过使用消息栏中,功能区的正下方。

消息栏

信任数据库

  1. 在“消息栏”上,单击“选项”

    将显示“Microsoft Office 安全选项”对话框。

  2. 选择“启用此内容”,然后单击“确定”

如果看不到消息栏

  • “数据库工具”选项卡上的“显示/隐藏”组中,单击“消息栏”

返回页首

运行参数查询

在您运行参数查询时,它会提示您输入值。您提供值后,参数查询会将该值作为字段条件应用。应用条件的字段是在查询设计中指定的。如果您在得到提示后未提供值,参数查询会将您的输入解释为空字符串。

通常,参数查询还兼属另一种查询类型。大多数参数查询是选择查询或交叉表查询,但追加查询、生成表查询和更新查询也可以是参数查询。

可以根据参数查询的另一种查询类型来运行它,但是,通常应遵循以下步骤。

运行查询

  1. 在“导航窗格”中找到查询。

  2. 请执行下列操作之一:

    • 双击要运行的查询。

    • 单击要运行的查询并按 Enter。

  3. 当出现参数查询提示时,输入要作为条件应用的值。

返回页首

运行 SQL 特定查询

有三种主要类型的SQL 特定查询︰ 联合查询、 传递查询和数据定义查询。

联合查询可合并两个或多个表中的数据,但具体方式与其他查询不同。大多数查询通过联接行来合并数据,而联合查询通过追加行来合并数据。联合查询与追加查询的不同之处在于:联合查询不更改基础表。联合查询在一个记录集中追加行,该记录集在查询关闭后不复存在。

传递查询不是由 Access 附带的数据库引擎处理的,它们被直接传递到远程数据库服务器并由该服务器执行处理,然后将结果传递回 Access。

数据定义查询是一种特殊类型的查询,它不处理数据,而是会创建、删除或修改其他数据库对象。

在设计视图中无法打开 SQL 特定查询,只能在 SQL 视图中打开或运行它们。除数据定义查询外,运行 SQL 特定查询都会在数据表视图中打开查询。

运行查询

  1. 在“导航窗格”中找到查询。

  2. 请执行下列操作之一:

    • 双击要运行的查询。

    • 单击要运行的查询并按 Enter。

返回页首

错误消息疑难解答

下表显示了您可能遇到的一些常见错误消息。这些错误可能显示为单元格中的消息(而不是应有的值),或者显示为错误消息。列表后面的各节提供了可以用来解决这些错误的步骤。

注意: 下表并未涵盖所有错误消息。如果在其中找不到您收到的错误消息,可以使用本文末尾的窗体,并在提供的注释框中添加有关该错误消息的特定信息,提交反馈。

错误消息

问题

解决方案

表达式中的类型不匹配

查询可能是具有不同数据类型的联接字段。

检查查询设计并确保联接的字段具有相同的数据类型。有关说明,请参阅部分中检查查询中的联接的字段

记录被删除

如果对象或数据库被损坏,可能出现此错误。

压缩和修复数据库。有关说明,请参阅部分压缩和修复数据库

别名导致的循环引用

分配给字段的别名与该字段的表达式的某个部分相同。

别名是为查询设计网格的“字段”行中的任意表达式(它实际上并不是一个字段)指定的名称。如果您没有自行指定别名,Access 会为您指定别名,例如 EXPR1。别名后紧跟冒号 (:),后面是表达式。当您运行查询时,别名会成为数据表中的列名。

更改别名。有关说明,请参阅更改字段别名部分。

#错误

当计算字段的值大于该字段的“字段大小”属性设置所允许的值时,会出现此错误。当计算字段的分母为零 (0) 或分母的计算结果为零 (0) 时,也会出现此错误。

确保计算字段的分母的计算结果不为零 (0)。根据情况更改“字段大小”属性。

#已删除的

所引用的记录已被删除。

如果记录被意外删除,则必须从备份中还原它。如果删除是有意进行的,则可以通过按 Shift+F9 来刷新查询,忽略此错误消息。

检查查询中的联接字段

若要检查查询中字段的数据类型,可以在设计视图中查看源表,并查看您所检查的字段的属性。

  1. 在设计视图中打开查询。联接显示为连接源表中字段的线条。记下每个联接的表名和字段名。

  2. 在导航窗格中,右键单击在查询中具有一个或多个联接字段的每个表,然后单击“设计视图”

    具有不同数据类型的联接字段

    1. 具有不同数据类型的联接字段。

    2. 右键单击该表,然后单击“设计视图”。

  3. 对于每个联接,为该联接所涉及的字段比较表设计网格的“数据类型”列中的值。

    在表设计视图中查看联接字段的数据类型

    1. 在表设计视图中查看联接字段的数据类型。

  4. 若要切换到某个表以便查看其中的字段,请单击具有该表名称的选项卡。

返回页首

压缩和修复数据库

在 Access 中运行“压缩和修复数据库”实用工具可以改进数据库的性能。此实用工具会为数据库文件制作一个副本,而且,如果数据库文件被分成许多碎片,此实用工具还会重新调整数据库文件在磁盘上的存储方式。压缩和修复过程完成后,压缩的数据库将释放浪费的空间,其大小通常比原始数据库要小。经常压缩数据库有助于确保数据库应用程序具有最佳性能,还可以解决由硬件问题、电源故障或电涌以及类似原因导致的错误。

压缩操作完成后,由于基础数据以连续页面的形式重新写入表中,因此提高了查询速度。扫描连续页面比扫描分段页面快得多。每个数据库压缩后,查询也得到了优化。

在压缩操作过程中,您可以使用被压缩数据库文件的原始名称,也可以使用其他名称以创建一个单独的文件。如果使用相同的名称,并且数据库压缩成功,Access 会自动用压缩版本替换原始文件。

设置自动实现此过程的选项

  1. 单击“Microsoft Office 按钮Office 按钮图像 ,然后单击“Access 选项”。

  2. 单击“当前数据库”,然后在“应用程序选项”下,选中“关闭时压缩”复选框。

    这样会使 Access 在每次关闭数据库时自动压缩和修复数据库。

手动压缩和修复数据库

  1. 单击Microsoft Office 按钮 Office 按钮图像 ,指向管理,然后在管理此数据库,请单击压缩和修复数据库

注意: 为了保证压缩操作成功完成,硬盘上必须有足够的存储空间来同时容纳原始数据库和压缩数据库。

返回页首

更改字段别名

  1. 在设计视图中打开查询。

  2. 在查询设计网格中,查找具有别名的字段。这种字段的名称末尾有一个冒号,例如,Name:

  3. 检查每个别名,确保这些别名与作为别名表达式一部分的任何字段的名称都不相同。如果相同,请更改别名。

返回页首

注意: 机器翻译免责声明:本文是由无人工介入的计算机系统翻译的。Microsoft 提供机器翻译是为了帮助非英语国家/地区用户方便阅读有关 Microsoft 产品、服务和技术的内容。由于机器翻译的原因,本文可能包含词汇、语法或文法方面的错误。

扩展你的技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×