SQL UPDATE 语句

UPDATE 语句用于更新表中已存在的记录。

SQL UPDATE 语法

UPDATE table_name
SET column1=value1,column2=value2,...
WHERE some_column=some_value;
知识兔

请注意 SQL UPDATE 语句中的 WHERE 子句!WHERE 子句规定哪条记录或者哪些记录需要更新。如果您省略了 WHERE 子句,所有的记录都将被更新!

 

演示数据库

在本教程中,我们将使用众所周知的 Northwind 样本数据库。

下面是选自 "Customers" 表的数据:

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
1
 
Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Germany
2Ana Trujillo Emparedados y heladosAna TrujilloAvda. de la Constitución 2222México D.F.05021Mexico
3Antonio Moreno TaqueríaAntonio MorenoMataderos 2312México D.F.05023Mexico
4
 
Around the HornThomas Hardy120 Hanover Sq.LondonWA1 1DPUK
5Berglunds snabbköpChristina BerglundBerguvsvägen 8LuleåS-958 22Sweden

 

SQL UPDATE 实例

假设我们要把客户 "Alfreds Futterkiste" 更新为一个新的联系人和城市。

我们使用下面的 SQL 语句:

UPDATE Customers
SET ContactName='Alfred Schmidt', City='Hamburg'
WHERE CustomerName='Alfreds Futterkiste';
知识兔

现在,选自 "Customers" 表的数据如下所示:

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
1
 
Alfreds FutterkisteAlfred SchmidtObere Str. 57Hamburg12209Germany
2Ana Trujillo Emparedados y heladosAna TrujilloAvda. de la Constitución 2222México D.F.05021Mexico
3Antonio Moreno TaqueríaAntonio MorenoMataderos 2312México D.F.05023Mexico
4
 
Around the HornThomas Hardy120 Hanover Sq.LondonWA1 1DPUK
5Berglunds snabbköpChristina BerglundBerguvsvägen 8LuleåS-958 22Sweden

 

Update 警告!

在更新记录时要格外小心!在上面的实例中,如果我们省略了 WHERE 子句,如下所示:

UPDATE Customers
SET ContactName='Alfred Schmidt', City='Hamburg';
知识兔

"Customers" 表将如下所示:

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
1
 
Alfreds FutterkisteAlfred SchmidtObere Str. 57Hamburg12209Germany
2Ana Trujillo Emparedados y heladosAlfred SchmidtAvda. de la Constitución 2222Hamburg05021Mexico
3Antonio Moreno TaqueríaAlfred SchmidtMataderos 2312Hamburg05023Mexico
4
 
Around the HornAlfred Schmidt120 Hanover Sq.HamburgWA1 1DPUK
5Berglunds snabbköpAlfred SchmidtBerguvsvägen 8HamburgS-958 22Sweden
计算机