select...for update获取

最近更新时间: 2025-10-11 18:10: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的行锁。