如何将选择查询转换为 Access 2002 中的操作查询

文章翻译 文章翻译
文章编号: 304354 - 查看本文应用于的产品
展开全部 | 关闭全部

概要

要执行的任务,如插入、 更新,或删除记录时,将使用动作查询。 通过更改其查询类型,您可以将现有的选择查询转换为操作查询。本文描述了不同类型的操作查询,并说明如何将选择查询更改为动作查询。

操作查询是一个查询,以使更改或移动的多个记录,只需一次操作中。有四种类型的动作查询: 删除、 更新、 追加,和生成表。

删除查询

删除查询从一个或多个表中删除一组记录。例如对于您可以使用删除查询来删除已停产的或有没有订单的产品。

如果启用级联删除,您可以使用删除查询从一个一对一关系中的多个表中的单个表或多个表-一对多的关系中删除记录。例如对于可以使用删除查询从爱尔兰及其所有订单中删除所有客户。但是,如果希望包括要添加条件的"多"的表和"一方的表必须运行该查询两次,因为查询不能同时从主表和相关的表中删除记录。

有关关系和设计数据库的其他信息请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
289533在何处可以找到有关设计在 Microsoft Access 数据库的信息
使用删除查询时的重要注意事项
  • 使用删除查询删除记录之后您不能撤消此操作。因此,您应预览数据之前您要删除该查询运行该查询。可以通过单击 视图 菜单上的 数据工作表 来执行此操作。
  • 您应该随时维护数据的备份副本。如果删除了错误的记录可以将它们从备份副本中检索。
  • 在某些种情况下运行删除查询可能会删除相关的表中的记录即使它们不包含在查询中。当查询只包含表-一对多的关系的"一"方的时,会出现这种情况,并启用了对该关系使用级联删除。当从"一方表中删除记录时,您也将从"多方表中删除记录。

    例如对于考虑与启用级联删除一个客户和订单表之间的关系。从客户表中删除的记录将删除在订单表中相关的订单。
  • 当删除查询包含如查询从一个在的表中删除重复记录的多个表时 querys UniqueRecords 属性必须设置为

更新查询

更新查询的一个或多个表中的记录组进行全局的更改。例如对于可以将 10%,所有奶制品的价格提高,或将某一工作类别中人员的提高 5 个百分点薪金调高。使用一个更新查询中,您可以更改现有表中的数据。

追加查询

追加查询可将一组记录从一个或多个表添加到一个或多个表的末尾。例如对于假设您获得了一些新客户和包含这些客户信息的表的数据库。为了避免键入所有这些信息,您希望将其追加到客户表。追加查询也是很有帮助的:
  • 追加基于条件的字段。例如对于您可能希望仅追加该姓名和未完成订单客户的地址。
  • 当另一个表中不存在的某些字段在一个表中时,其中追加记录。例如对于在罗斯文示例数据库,客户表有 11 个字段。假设您要从包含匹配 9 个客户表中将 11 个字段的字段的另一个表追加记录。追加查询将追加匹配字段中的数据,并忽略其他。

生成表查询

生成表查询从一个或多个表中数据的全部或部分创建一个新表。生成表查询是很有帮助的:
  • 创建要导出到其他 Microsoft Access 数据库表。例如对于您可能想要创建一个包含您雇员表中的多个字段的表,然后将该表导出到由您人事部门使用的数据库。
  • 通过使用宏或代码自动制作表的备份副本。
  • 创建一个历史记录表包含旧的记录。例如对于您可以创建一个表来存储所有旧订单之前从当前的订单表中删除它们。

将选择查询转换为一个操作查询

  1. 启动 Microsoft Access 2002。
  2. 帮助 菜单上单击 示例数据库,然后单击 罗斯文示例数据库
  3. 视图 菜单上单击 数据库对象,然后单击 查询
  4. 单击 发票 查询,然后单击 设计
  5. 查询 菜单上单击 更新查询 以将该选择查询更改为更新查询。
  6. 订单明细 表,查询设计网格中将 单价 列中键入下面的表达式,在 更新到 行中。此表达式将会增加下订单的 10%的单位价格。
    [订单详细信息] [单价] * 1.10
  7. 货主国家/地区 列中键入 条件 行中的 美国
  8. 查询 菜单上单击 运行 以更新订单将货物发往美国的 10%的单位价格。
  9. 不进行保存就关闭发货单查询。

查询设计网格时更改查询类型的更改

从选择查询的查询类型更改为操作查询后,将按如下方式更改查询设计网格中。
  • 更新查询
    一个行添加在网格中底部的屏幕,标题为"更新到"。 在此行来更新基于表达式的记录的一组输入一个表达式。
  • 追加查询
    系统将提示您为表的名称追加记录,和您应该看到一行标题为"追加到"。这是您正在向其中追加记录的表中字段的名称。Microsoft Access 会自动填充的两个表之间的匹配字段名称。
  • 删除查询
    行添加到查询设计网格中底部标题为"删除。要删除的一组基于条件的记录,删除 行更改为 位置,然后输入查询应使用作为 条件 行中的准则的表达式。
  • 生成表查询
    系统将提示您的新表的名称创建。您还可以在不同的数据库中创建该表。将带有字段名称和数据类型从现有表创建表。



参考

有关删除查询中唯一的记录属性设置的其他信息请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
240098ACC2000:"可能无法删除从指定的表"在删除查询中的错误消息

有关创建操作查询的详细信息的 帮助 菜单上单击 Microsoft Access 帮助、 在 Office 助手或应答向导中键入 创建动作查询,然后单击 搜索 以查看返回的主题。
有关创建选择查询的其他信息请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
304325如何在 Access 2002 中创建一个选择查询
有关创建参数查询的其他信息请单击下面文章编号,以查看 Microsoft 知识库中相应的文章:
304352如何: 在 Microsoft Access 2002 中创建参数查询
有关创建交叉表查询的其他信息请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
304349如何在 Access 2002 中创建一个交叉表查询


属性

文章编号: 304354 - 最后修改: 2004年8月25日 - 修订: 3.3
这篇文章中的信息适用于:
  • Microsoft Access 2002 标准版
关键字:?
kbmt kbquery kbhowtomaster KB304354 KbMtzh
机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版: 304354
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com