MySQL 教程

MySQL 教程 MySQL 简介 MySQL 管理系统

MySQL SQL 语句

MySQL SQL MySQL SELECT MySQL WHERE MySQL AND, OR, NOT MySQL ORDER BY MySQL INSERT INTO MySQL NULL Values MySQL UPDATE MySQL DELETE MySQL LIMIT MySQL MIN 和 MAX MySQL COUNT, AVG, SUM MySQL LIKE MySQL 通配符 MySQL IN MySQL BETWEEN MySQL 别名 MySQL 联接 MySQL INNER JOIN MySQL LEFT JOIN MySQL RIGHT JOIN MySQL CROSS JOIN MySQL 自联接 MySQL UNION MySQL GROUP BY MySQL HAVING MySQL EXISTS MySQL ANY, ALL MySQL INSERT SELECT MySQL CASE MySQL Null 函数 MySQL 注释 MySQL 运算符

MySQL 数据库

MySQL 创建数据库 MySQL 删除数据库 MySQL 创建表 MySQL 删除表 MySQL 更改表 MySQL 约束 MySQL Not Null MySQL Unique MySQL Primary Key MySQL Foreign Key MySQL Check MySQL Default MySQL Create Index MySQL 自动增量 MySQL 日期 MySQL 视图

MySQL 参考手册

MySQL 数据类型 MySQL 函数

MySQL 实例

MySQL 实例 MySQL 测验 MySQL 练习


MySQL UPDATE 语句

MySQL UPDATE 语句

UPDATE语句用于修改表中已有的记录。

UPDATE 语法

UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;

注意:更新表中的记录时要小心! 注意 UPDATE 语句中的 WHERE 子句。 WHERE 子句指定应该更新哪些记录。 如果省略WHERE子句,表中的所有记录都会更新!


演示数据库

以下是 Northwind 示例数据库中 "Customers" 客户表的选择:

CustomerID CustomerName ContactName Address City PostalCode Country
1

Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico
4

Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK

更新表

以下 SQL 语句将第一个客户 (CustomerID = 1) 更新为一个新联系人一个新城市。

实例

UPDATE Customers
SET ContactName = 'Alfred Schmidt', City = 'Frankfurt'
WHERE CustomerID = 1;

"客户"表中的选择现在如下所示:

CustomerID CustomerName ContactName Address City PostalCode Country
1

Alfreds Futterkiste Alfred Schmidt Obere Str. 57 Frankfurt 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico
4

Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK


UPDATE 更新多条记录

WHERE 子句决定要更新多少记录。

以下 SQL 语句将所有地区为"墨西哥"的记录的 PostalCode 更新为 00000:

实例

UPDATE Customers
SET PostalCode = 00000
WHERE Country = 'Mexico';

"Customers"表中的选择现在如下所示:

CustomerID CustomerName ContactName Address City PostalCode Country
1

Alfreds Futterkiste Alfred Schmidt Obere Str. 57 Frankfurt 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 00000 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 00000 Mexico
4

Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK

Update 警告!

更新记录时要小心。 如果省略 WHERE 子句,所有记录都会更新!

实例

UPDATE Customers
SET PostalCode = 00000;

"Customers"表中的选择现在如下所示:

CustomerID CustomerName ContactName Address City PostalCode Country
1

Alfreds Futterkiste Alfred Schmidt Obere Str. 57 Frankfurt 00000 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 00000 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 00000 Mexico
4

Around the Horn Thomas Hardy 120 Hanover Sq. London 00000 UK

学习训练

测验:

更新 Customers 表中所有记录的 City 列。

 Customers
 City = 'Oslo';

开始练习