小编Kar*_*san的帖子

禁用触发器使 DELETE 快速,但表没有触发器?

我正在从 PostgreSQL 表中删除 750k 行中的 130k。

第一次,花了8个小时才完成删除查询。

第二次,我向表中添加了一个索引,并重建了该索引。现在用了3个小时完成删除查询

第三次,我添加了以下行:

alter table contact disable trigger ALL; 
delete from contact where ....; 
alter table contact enable trigger ALL;
Run Code Online (Sandbox Code Playgroud)

删除行花了不到一秒钟的时间。即使没有与当前和外键表关联触发器

即使没有与表关联的触发器,这种快速查询性能的原因可能是什么?数据库级别还有其他类型的触发器吗?

postgresql trigger foreign-key ddl postgresql-performance

3
推荐指数
1
解决办法
107
查看次数