SQL UPDATE 语句

2025年7月22日 | 阅读 4 分钟

SQL UPDATE 语句用于修改数据库中已有的数据。WHERE 子句中的条件决定了要更新哪一行。

语法

说明: 在上述语法中,table_name 表示我们要更新数据的表的名称。SET 关键字用于设置表中的列值,where 条件是可选的。

为了更新数据,可以举一个 Employee 表的例子。

示例表

EMPLOYEE

EMP_IDEMP_NAMECITY工资年龄
1AngelinaChicago20000030
2RobertAustin30000026
3基督徒Denver10000042
4KristenWashington50000029
5罗素Los angels20000036
6Marry加拿大60000048

更新单条记录

更新 EMP_NAME 列,并将 SALARY 为 500000 的行的值设置为 'Emma'。

语法

说明: 在上述语法中,table_name 表示我们要更新数据的表的名称。SET 关键字用于设置表中单列的值,where 子句用于添加条件。

查询

说明: 执行上述语句后,如果语句中没有错误,则会发送“1 row updated”的消息。这将更新“EMPLOYEE”表中的上述行。用户应注意列数据类型及其对应的值是否匹配。以上查询将 EMP_NAME = 'Emma' 的值更新到 SALARY 为 500000 的员工记录处;

如果想在执行语句后查看 EMPLOYEE 表的内容,请使用以下 SELECT 语句。

输出:执行此查询后,EMPLOYEE 表将如下所示:

EMP_IDEMP_NAMECITY工资年龄
1AngelinaChicago20000030
2RobertAustin30000026
3基督徒Denver10000042
4艾玛Washington50000029
5罗素Los angels20000036
6Marry加拿大60000048

更新多条记录

如果要更新多个列,应使用逗号分隔每个赋值的字段。在 EMPLOYEE 表中,将 EMP_NAME 更新为 'Kevin',并将 CITY 更新为 'Boston',其中 EMP_ID 为 5。

语法

说明: 在上述语法中,table_name 表示我们要更新数据的表的名称。这里,SET 关键字用于设置表中多个列的值,where 子句用于添加条件。

查询

说明: 执行上述语句后,如果语句中没有错误,则会发送“1 row updated”的消息。这将更新“EMPLOYEE”表中的上述行。用户应注意列数据类型及其对应的值是否匹配。在上面的查询中,它会更新 EMP_NAME = 'Kelvin',City = 'Boston' 等多个值,其中员工的 employee ID 匹配 5;

如果想在执行语句后查看 EMPLOYEE 表的内容,请使用以下 SELECT 语句。

输出

EMP_IDEMP_NAMECITY工资年龄
1AngelinaChicago20000030
2RobertAustin30000026
3基督徒Denver10000042
4KristenWashington50000029
5KevinBoston20000036
6Marry加拿大60000048

不使用 WHERE 子句

如果要更新表中的所有行,则不需要使用 WHERE 子句。在 EMPLOYEE 表中,将 EMP_NAME 列更新为 'Harry'。

语法

查询

说明: 执行上述语句后,如果语句中没有错误,则会发送“Row updated”的消息。这将更新“EMPLOYEE”表中的所有行。用户应注意列数据类型及其对应的值是否匹配。在上面的查询中,它会更新所有员工姓名为 'Harry' 的行。

如果想在执行语句后查看 EMPLOYEE 表的内容,请使用以下 SELECT 语句。

输出

EMP_IDEMP_NAMECITY工资年龄
1HarryChicago20000030
2HarryAustin30000026
3HarryDenver10000042
4HarryWashington50000029
5HarryLos angels20000036
6Harry加拿大60000048

SQL UPDATE 语句常见问题解答

1. 如果在 update 查询中忘记使用 WHERE 子句会发生什么?

答案:这是可选的,但如果我们不在查询中使用 WHERE 子句,更新操作将对表中的每一行执行。

以 Class 表为例

R.No名称条款
1安什A
2HarshA
3拉曼 (Raman)A

例如

上面的查询会将 name 列中的所有行更新为 'Anshu';


下一主题DBMS SQL Delete