锁定 postgresql 表

Ras*_*sna 2 database postgresql locking table-lock psql

是否可以通过 shell 脚本或 sql 文件运行 psql 命令来将 PostgreSQL 数据库中的表锁定指定时间?

如果我们运行 LOCK TABLE 命令,当脚本退出时锁也将消失,所以这还不够。

Tal*_*lin 6

在指定时间与?pg_sleep一起使用 LOCK TABLE像下面的脚本这样的东西应该锁定表 60 秒(注意这是未经测试的):

BEGIN WORK;
LOCK TABLE MyTable IN ACCESS EXCLUSIVE MODE;
SELECT pg_sleep(60);
COMMIT WORK;
Run Code Online (Sandbox Code Playgroud)