1、update语句的语法。
update <表名>
set <列名> = <表达式>;
--例子:
update product
set regist_date = '2009-10-10';
--将product表中regist_date项全部改为2009-10-10
2、更新数据时也可以像delete 语句那样使用where子句,这种指定更新对象的update语句称为搜索型update语句
update <表名>
set <列名> = <表达式>
where <条件>;
--例子:
update product
set sale_price = sale_price * 10
where product_type = '厨房用具';
--将product表中product_type为厨房用具的记录的sale_price更新为原来的10倍
3、使用update也可以将列更新为null(该更新俗称为null清空)。此时只需要将赋值表达式右边的值直接写为null即可。但是,只有未设置not null约束和主键约束的列才可以清空为null。
update product
set regist_date = null
where product_id = '0008';
--将商品编号为0008的数据的登记日期更新为NULL
4、update语句的set子句支持同时将多个列作为更新对象。使用逗号将列进行分隔排列,这一方法在所有的DBMS 中都可以使用。但是将列清单化,这一方法在某些DBMS 中是无法使用的。
-- 使用逗号对列进行分隔排列
update product
set sale_price = sale_price * 10, purchase_price = purchase_price / 2
where product_type = '厨房用具';
-- 将列用()括起来的清单形式
update product
set (sale_price, purchase_price) = (sale_price * 10, purchase_price / 2)
where product_type = '厨房用具';