通常,除了从数据库中获得数据,我们还希望修改这些数据。例如,我们可能要提高数据库中图书的价格。可以使用UPDATE语句来完成这个任务。
UPDATE语句的常用格式是:
UPDATE[LOW_PRIORITY][IGNORE]tablename
SET column1=expression1,column2=expression2,...
[WHERE condition]
[ORDER BY order_criteria]
[LIMIT number]
其基本思想是更新名为tablename的表,设置每列的名称为适当的表达式。可以通过WHERE子句限制UPDATE到特定的行,也可以使用LIMIT子句限制受影响的总行数。ORDER BY通常只在LIMIT子句的连接中使用;例如,如果只更新前10行,可以将它们放置在前面的位置。如果指定了LOW_PRIORITY和IGNORE关键字,就会像在INSERT语句中一样工作。
接下来,我们看一些例子。如果要将图书的价格提高10%,可以使用一个没有WHERE子句的UPDATE语句,如下所示:
update books
set price=price*1.1;
另一方面,如果希望修改一行(例如,要更新一个顾客的地址)可以使用如下所示语句:
update customers
set address='250 Olsens Road'
where customerid=4;