Представьте, что у меня есть таблица с двумя столбцами, в которых есть реестр очков от двух разных команд, как показано ниже:
ТАБЛИЦА:
Таблица показывает соотношение двух команд и очков, которые они получают, когда заканчивают уровень в течение определенного периода времени.
Две команды могут играть уровень, когда захотят, и обновлять свои очки, когда они заканчивают. Так что возможно, что они обновят свой собственный столбец точек одновременно. Например, команда A обновляет first_team_points, а команда B обновляет second_team_points.
Я знаю, что InnoDB имеет блокировку на уровне строк, поэтому я предполагаю, что в этом случае два обновления будут реализованы в последовательном порядке.
Я ошибаюсь? Мне нужно что-то настроить? Не вызовет ли второй запрос обновления тупик?
Заранее спасибо!
@LucaLupidi - классический пример взаимоблокировки может возникнуть при использовании пары строк в одной таблице.






Пожалуйста, предоставьте код для критики. Между тем в целом ...
BEGIN; -- start the transaction
SELECT ... FOR UPDATE; -- if you need to look at something before updating
...
INSERT/UPDATE/etc -- make whatever changes
COMMIT;
Есть несколько проблем:
Если все это в одной таблице, вы не рискуете попасть в тупик.