1. 程式人生 > >PostgreSQL清空表並保留表結構、清空資料庫還原資料庫為新建時的狀態的方法

PostgreSQL清空表並保留表結構、清空資料庫還原資料庫為新建時的狀態的方法

清空表並保留表結構

  一般情況下,我們使用delete刪除表中資料,但是delete是一條資料一條資料來刪除表中的資料,直至表清空(保留表結構),但是當資料量很大時,它耗時較久。
  其實,刪除表資料但保留表結構使用truncate更快速安全,使用方法為:

//當表沒有其他關係時
TRUNCATE TABLE tablename;
//當表中有外來鍵時,要用級聯方式刪所有關聯的資料
TRUNCATE TABLE tablename CASCADE;

清空資料庫還原資料庫為新建時的狀態

  在postgresql中,建立資料庫時會自動建立public模式,一般我們把表都儲存在該模式中,因此直接刪除該模式再重新建立該模式。
  若資料在其他模式中,則把public換為資料表所在模式即可。

//刪除public模式以及模式裡面所有的物件
DROP SCHEMA public CASCADE;
//建立public模式
CREATE SCHEMA public;