Szybkie kasowanie tablicy

Niekiedy trzeba skasować zawartość jakiejś tablicy. Jeśli zawiera ona - np. - 500.000 rekordów, na wynik polecenia

   DELETE FROM our_table;

możemy czekać bardzo długo (albo krótko - do chwili pojawienia się błędu przepełnienia segmentu wycofania). Ponadto bloki dyskowe zaalokowane dla tej tabeli będą nadal do niej przydzielone (co zaowocuje min. wolną realizacją zapytań typu full table scan).

Dużo szybciej ("błysk oka") działa, nie używa segmentu wycofania i zwalnia miejsce zajmowane przez tabelę polecenie

  TRUNCATE TABLE our_table;

Tylko ważna uwaga: to polecenie nie jest transakcyjne, nie można go cofnąć, nie czeka na zwolnienie ewentualnych blokad.

komentarze obsługiwane przez Disqus