select...for update获取
最近更新时间: 2025-02-18 16:02:00
#session1
postgres=# begin;
BEGIN
postgres=# set lock_timeout to 1;
SET
postgres=# select * from t_row_lock where mc='pgxz' for update;
id | mc
----+------
2 | pgxz
(1 row)
#session2
postgres=# begin;
BEGIN
postgres=# set lock_timeout to 1;
SET
postgres=# select * from t_row_lock where mc='TDSQL PG' for update;
id | mc
----+------
2 | pgxz
(1 row)
上面session1与session2分别持有mc=pgxz行和mc=TDSQL PG的行锁。