通过使用 UPDATE 更改数据

UPDATE 语句可以更改表或视图中单行、行组或所有行的数据值。还可以用该语句更新远程服务器上的行(使用链接服务器名称或 OPENROWSET、OPENDATASOURCE 和 OPENQUERY 函数),前提是用来访问远程服务器的 OLE DB 访问接口支持更新操作。引用某个表或视图的 UPDATE 语句每次只能更改一个基表中的数据。

UPDATE 语句包括以下主要子句:

  • SET

    包含要更新的列和每个列的新值的列表(用逗号分隔),格式为 column_name = expression。表达式提供的值包含多个项目,如常量、从其他表或视图的列中选择的值或使用复杂的表达式计算出来的值。有关详细信息,请参阅通过使用 SET 子句更改数据

  • FROM

    指定为 SET 子句中的表达式提供值的表或视图,以及各个源表或视图之间可选的联接条件。有关详细信息,请参阅使用 FROM 子句更改数据

  • WHERE

    指定搜索条件,该搜索条件定义源表和视图中可以为 SET 子句中的表达式提供值的行。有关详细信息,请参阅使用 WHERE 子句更改数据

以下示例使用 UPDATE 语句将所有与产品型号 37 相关的产品价格提高 10%:

USE AdventureWorks2008R2;
GO
UPDATE AdventureWorks2008R2.Production.Product
SET ListPrice = ListPrice * 1.1
WHERE ProductModelID = 37;
GO

使用 UPDATE 更改数据

UPDATE (Transact-SQL)