åben 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) ...
tilbage til session 1, for at opdatere den valgte post (og frigive låsen):
mysql> UPDATE table_name SET something WHERE cond;
mysql> commit;
tilbage til session 2:
1) viser enten låsetimeoutfejl
ERROR 1205 (HY000): Lock wait timeout exceeded; try restarting transaction
2) eller viser resultat
... (result here) ...
1 row in set (0.00 sec)
3) eller viser intet resultat (fordi den tilsvarende post er blevet ændret, så den specificerede betingelse blev ikke opfyldt)
Empty set (0.00 sec)