Sie können ein SELECT FOR UPDATE
verwenden . Beginnen Sie innerhalb Ihrer Transaktion damit, die Zeilen auszuwählen, die Sie "sperren" möchten, etwa so:
SELECT * from TABLE where id = 123 FOR UPDATE;
Wenn zwei verschiedene Transaktionen dies gleichzeitig versuchen, lässt MySQL die zweite warten, bis die erste die Transaktion festgeschrieben hat. Auf diese Weise können Sie sicher sein, dass die zweite Transaktion die Zeile erst betrachtet, nachdem die erste damit fertig ist.