我有两个表:
游戏:
下注:
接下来,我在games
表中创建一行,其中id
等于1
。我正在尝试做的是并发限制器,以限制与该特定游戏相关的交易量,并且使用mysql的工具将它的子对象限制为一个。因此,我找到了mysql的lock for update
和lock in share mode
,并尝试通过这种方式使用它们:
打开一个终端并输入:
USE test;
START TRANSACTION;
SELECT * FROM `games` WHERE `id` = 1 FOR UPDATE;
然后打开另一个终端并键入相同的内容,期望它等待直到文档中所述的第一个事务被提交/回滚,但是我得到了实际结果(一个具有该ID的游戏)。使用LOCK IN SHARE MODE
时也会发生同样的事情。
我在这里想念什么?