PostgreSQL删除大量数据实践


 

 

-- 当数据库在有约束的情况下,无论进行删除或者更新操作,都会对相关表进行一个校验,判断相关表的相关记录是否被删除或者更新。
-- 在删除大量数据时,可以先禁用触发器,然后再进行删除。最后再优化一下表空间

-- 1.禁用触发器
ALTER TABLE table_name DISABLE TRIGGER ALL;

-- 2.DELETE
DELETE FROM table_name WHERE ... -- 3.启用触发器 ALTER TABLE table_name ENABLE TRIGGER ALL; -- 4.优化表空间 -- 维护数据库磁盘,释放空间 vacuum FULL table_name; -- 5.重建索引,替换查询效率 REINDEX TABLE table_name;

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM