отворете 2 клиентска сесия на mysql.
на сесия 1:
mysql> start transaction;
mysql> SELECT * FROM table_name WHERE cond FOR UPDATE;
... (result here) ...
1 row in set (0.00 sec)
на сесия 2:
mysql> start transaction;
mysql> SELECT * FROM table_name WHERE cond FOR UPDATE;
... (no result yet, will wait for the lock to be released) ...
обратно към сесия 1, за да актуализирате избрания запис (и да освободите заключването):
mysql> UPDATE table_name SET something WHERE cond;
mysql> commit;
обратно към сесия 2:
1) или показва грешка при изчакване на заключване
ERROR 1205 (HY000): Lock wait timeout exceeded; try restarting transaction
2) или показване на резултат
... (result here) ...
1 row in set (0.00 sec)
3) или не показва резултат (тъй като съответният запис е променен, така че определеното условие не е изпълнено)
Empty set (0.00 sec)