Dim*_*maf 3 postgresql transactions truncate copy
我需要在 Postgres 9.4 中执行以下事务:
BEGIN TRANSACTION;
TRUNCATE TestTable;
COPY TestTable FROM '/DATAforTestTable' DELIMITER ',' CSV;
END TRANSACTION;
Run Code Online (Sandbox Code Playgroud)
用户必须在执行事务时对 TestTable 中的“旧”数据具有读取权限,而无需等待事务结束。是否可以?或者我必须通过处理和重命名表来完成?
从手册:
TRUNCATE 在它操作的每个表上获取一个 ACCESS EXCLUSIVE 锁,这会阻止该表上的所有其他并发操作。
用 delete
begin;
delete from t;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2565 次 |
| 最近记录: |