简单的UPDATE语句语法格式如下:

    其中,column_name 是要更新的列,等号后面的 value 是要更新的目标值,必须符合列的类型定义。WHERE 条件子句指定要更新的行记录必须满足的条件,没有 WHERE 条件子句就是更新表对应列的所有记录。

    示例:更新部分记录,违反约束报错

    除了显式的 UPDATE 语句外,还有几类语句也可以更新数据。比如说 INSERT 因为约束冲突失败的时候,可以使用 ON DUPCLICATE KEY UPDATE 子句转变为 UPDATE 语句更新相关字段。

    关于 INSERT ON DUPLICATE KEY UPDATE 子句

    使用 ON DUPLICATE KEY UPDATE 子句时,要求表上面要有主键或唯一约束(索引)。

    关于 SELECT … FOR UPDATE 子句

    使用 SELECT … FOR UPDATE 可以在读取记录的时候就对记录加锁,避免其他 DML 语句对该笔记录进行同时修改,这种设计通常也称为“悲观锁策略”。

    示例:使用 SELECT … FOR UPDATE 先锁定记录后修改