Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

mysql select for update

作者:酷帥男爵   发布日期:2026-07-27   浏览:77

-- 这是一个使用 SELECT ... FOR UPDATE 的示例,它用于在事务中锁定选定的行,以防止其他事务修改这些行。

START TRANSACTION;

-- 假设我们有一个名为 'accounts' 的表,包含 'id' 和 'balance' 两个字段。
-- 我们想要锁定 id 为 1 的账户,并更新其余额。
SELECT balance FROM accounts WHERE id = 1 FOR UPDATE;

-- 在这里执行一些逻辑,例如计算新的余额值。
-- 更新账户余额
UPDATE accounts SET balance = balance - 100 WHERE id = 1;

COMMIT;

解释说明:

  • START TRANSACTION;:开始一个事务。
  • SELECT balance FROM accounts WHERE id = 1 FOR UPDATE;:选择 id 为 1 的账户,并对其加锁,防止其他事务在此期间修改该行的数据。
  • UPDATE accounts SET balance = balance - 100 WHERE id = 1;:更新锁定的账户余额。
  • COMMIT;:提交事务,释放锁并保存更改。

通过这种方式,可以确保在事务期间,其他事务无法修改被锁定的行,从而避免并发问题。

上一篇:linux安装mysql客户端

下一篇:mysql 关键字

大家都在看

mysql二级索引

mysqlavg函数保留小数

mysql显示表内容

mysql收集表统计信息

mysql经纬度距离计算

mysql 加密

mysql大小写转换函数

存储过程mysql

mysql 1265

mysql with语句

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站