öppna 2 mysql klientsession.
på session 1:
mysql> start transaction;
mysql> SELECT * FROM table_name WHERE cond FOR UPDATE;
... (result here) ...
1 row in set (0.00 sec)
på session 2:
mysql> start transaction;
mysql> SELECT * FROM table_name WHERE cond FOR UPDATE;
... (no result yet, will wait for the lock to be released) ...
tillbaka till session 1, för att uppdatera vald post (och släppa låset):
mysql> UPDATE table_name SET something WHERE cond;
mysql> commit;
tillbaka till session 2:
1) antingen visar låset timeout-fel
ERROR 1205 (HY000): Lock wait timeout exceeded; try restarting transaction
2) eller visar resultat
... (result here) ...
1 row in set (0.00 sec)
3) eller visar inget resultat (eftersom motsvarande post har ändrats, så det angivna villkoret uppfylldes inte)
Empty set (0.00 sec)