SQL Server (Transact-SQL) UPDATE 关键字用于修改表中的现有记录。 SQL Server WHERE 子句可以与 UPDATE 语句一起使用来更新选定的行,否则所有行都会更新被分配更新的值。
语法
在 SQL Server (Transact-SQL) 中使用 UPDATE 关键字的语法如下:
UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition(s);
示例:
考虑一个数据库,其中包含一个名为 Employee 的表,其中包含以下记录:
EmpID | Name | City | Age | Salary |
---|---|---|---|---|
1 | John | London | 25 | 3000 |
2 | Marry | New York | 24 | 2750 |
3 | Jo | Paris | 27 | 2800 |
4 | Kim | Amsterdam | 30 | 3100 |
5 | Ramesh | New Delhi | 28 | 3000 |
6 | Huang | Beijing | 28 | 2800 |
要更新 EmpID 为 5 的员工的城市和薪资,语句将为:
UPDATE Employee
SET City = 'Mumbai', Salary = 2900
WHERE EmpID = 5;
-- 查看结果
SELECT * FROM Employee
现在Employee表将包含以下记录:
EmpID | Name | City | Age | Salary |
---|---|---|---|---|
1 | John | London | 25 | 3000 |
2 | Marry | New York | 24 | 2750 |
3 | Jo | Paris | 27 | 2800 |
4 | Kim | Amsterdam | 30 | 3100 |
5 | Ramesh | Mumbai | 28 | 2900 |
6 | Huang | Beijing | 28 | 2800 |
同样,更新Salary John住在伦敦,可以使用以下语句:
UPDATE Employee
SET Salary = 3200
WHERE Name = 'John' AND City = 'London';
--查看结果
SELECT * from Employee;
现在是Employee表将包含以下记录:
EmpID | Name | City | Age | Salary |
---|---|---|---|---|
1 | John | London | 25 | 3200 |
2 | Marry | New York | 24 | 2750 |
3 | Jo | Paris | 27 | 2800 |
4 | Kim | Amsterdam | 30 | 3100 |
5 | Ramesh | Mumbai | 28 | 3000 |
6 | Huang | Beijing | 28 | 2800 |