创建更新查询 (Visual Database Tools)

适用于:SQL Server

可以使用更新查询在一次操作中更改多行的内容。 例如,在 titles 表中,可以使用更新查询将 10% 添加到特定出版商的所有书籍的价格。

创建更新查询时,请指定:

  • 要更新的表。

  • 要更新其内容的列。

  • 用于更新各个列的值或表达式。

  • 用于定义要更新的行的搜索条件。

例如,以下查询通过将一个出版商出版的所有书籍都加价 10% 来更新 titles 表:

UPDATE titles
    SET price = price * 1.1
WHERE (pub_id = '0766');

谨慎

无法撤消执行更新查询的作。 作为预防措施,在执行查询之前备份数据。

创建更新查询

  1. 将要更新的表添加到“关系图”窗格。

  2. “查询设计器 ”菜单指向 “更改类型”,然后选择“ 更新”。

    备注

    如果在启动更新查询时“关系图”窗格中显示多个表,则查询和视图设计器将显示“插入值选择目标表”对话框,提示输入要更新的表的名称。

  3. 在“关系图”窗格中,选中要为其提供新值的每个列的复选框。 这些列显示在“条件”窗格中。 仅当将它们添加到查询时,才会更新列。

  4. 在“条件”窗格的 “新建值” 列中,输入列的更新值。 可以输入文本值、列名或表达式。 该值必须与要更新的列的数据类型匹配(或兼容)。

    谨慎

    查询和视图设计器无法检查值是否适合要更新的列的长度。 如果提供的值太长,则可能会截断该值而不发出警告。 例如,如果 name 列长 20 个字符,但指定更新值 25 个字符,则可能截断最后 5 个字符。

  5. 通过在 筛选器 列中输入搜索条件来定义要更新的行。 有关详细信息,请参阅“指定搜索条件”(Visual Database Tools)。

    如果未指定搜索条件,则更新指定表中的所有行。

    备注

    将列添加到“条件”窗格以用于搜索条件时,查询和视图设计器还会将其添加到要更新的列列表中。 如果您希望使用某列作为搜索条件,但不想更新该列,请在表示表或表值对象的矩形中,清除该列名旁边的复选框。

执行更新查询时,不会在 “结果”窗格中(Visual Database Tools)中报告任何结果。 而是显示一条消息,指示更改了多少行。