Vos balises suggèrent que vous comprenez la réponse :le verrouillage. Les bases de données relationnelles (généralement) implémentent les propriétés ACID des transactions, qui garantissent la cohérence des données. En pratique, ceux-ci sont parfois assouplis pour des raisons de performances, mais la plupart des bases de données proposent une méthode pour atteindre cet objectif.
Dans MySQL, les mécanismes de verrouillage dépendent du moteur de stockage sous-jacent. InnoDB propose plusieurs options, qui sont décrites dans la documentation .
Pour réaliser ces verrous, vous disposez essentiellement de deux options syntaxiques avec un SELECT
:
select . . . for update
select . . . lock in share mode
Notez que ces instructions doivent être utilisées dans une transaction explicite.