【问题标题】:MySQL SELECT ... FOR UPDATEMySQL SELECT ... 更新
【发布时间】:2021-09-18 10:34:38
【问题描述】:

我正在尝试执行此查询。

SET AUTOCOMMIT = 0;
START TRANSACTION;
SELECT * FROM calendar WHERE id = 11 FOR UPDATE;
COMMIT;

我只想锁定 id = 11 的行,但 MySQL 给我这个错误:

1064 - SQL query syntax error near 'LIMIT 0, 25' line 1

我的表(InnoDB)组成如下:

你能帮帮我吗?

【问题讨论】:

  • 您能否尝试提供有关您的问题的更多信息并相应地编辑您的问题?

标签: mysql transactions locking row


【解决方案1】:

试试这个

SELECT * FROM calendar WHERE id = 11;

如果要更新,请运行更新查询

update calender set field1=value1,field2=value2 where id =11;

【讨论】:

  • 嗨,我已经实现了一个预订系统,所以我必须参考mysql的交易系统。不知道你的问题是否适合我。
  • 正如目前所写,您的答案尚不清楚。请edit 添加其他详细信息,以帮助其他人了解这如何解决所提出的问题。你可以找到更多关于如何写好答案的信息in the help center
猜你喜欢
  • 2021-09-25
  • 2011-10-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-18
  • 1970-01-01
  • 2011-10-20
相关资源
最近更新 更多