PostgreSQL - polecenie TRUNCATE TABLE

PostgreSQL TRUNCATE TABLEPolecenie służy do usuwania pełnych danych z istniejącej tabeli. Możesz również użyć polecenia DROP TABLE, aby usunąć całą tabelę, ale spowoduje to usunięcie całej struktury tabeli z bazy danych i będziesz musiał ponownie utworzyć tę tabelę, jeśli chcesz przechowywać niektóre dane.

Ma taki sam efekt jak DELETE na każdej tabeli, ale ponieważ w rzeczywistości nie skanuje tabel, jest szybszy. Ponadto natychmiast odzyskuje miejsce na dysku, zamiast wymagać kolejnej operacji VACUUM. Jest to najbardziej przydatne na dużych stołach.

Składnia

Podstawowa składnia TRUNCATE TABLE wygląda następująco -

TRUNCATE TABLE  table_name;

Przykład

Rozważmy, że tabela COMPANY zawiera następujące rekordy -

id | name  | age | address    | salary
----+-------+-----+------------+--------
  1 | Paul  |  32 | California |  20000
  2 | Allen |  25 | Texas      |  15000
  3 | Teddy |  23 | Norway     |  20000
  4 | Mark  |  25 | Rich-Mond  |  65000
  5 | David |  27 | Texas      |  85000
  6 | Kim   |  22 | South-Hall |  45000
  7 | James |  24 | Houston    |  10000
(7 rows)

Poniżej znajduje się przykład do obcięcia -

testdb=# TRUNCATE TABLE COMPANY;

Teraz tabela COMPANY jest obcinana, a następujący wynik będzie stanowił wynik instrukcji SELECT -

testdb=# SELECT * FROM CUSTOMERS;
 id | name | age | address | salary
----+------+-----+---------+--------
(0 rows)