Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como bloquear uma linha para selecionar no MySQL


Você pode usar um SELECT FOR UPDATE . Dentro de sua transação, comece selecionando as linhas que você deseja "bloquear", algo assim:
 SELECT * from TABLE where id = 123 FOR UPDATE;

Se duas transações diferentes tentarem fazer isso ao mesmo tempo, o MySQL fará a segunda esperar até que a primeira tenha confirmado a transação. Dessa forma, você terá a certeza de que a segunda transação só olhará para a linha depois que a primeira for concluída.