Czym różnią się polecenia DROP TABLE i TRUNCATE TABLE?
A.
DROP TABLE usuwa tabelę, a TRUNCATE TABLE zmienia w niej dane wg warunkuŹle.
TRUNCATE nie modyfikuje danych warunkowo.B. oba usuwają tabelę z zawartością, ale
TRUNCATE da się cofnąćŹle.
TRUNCATE nie usuwa tabeli i zwykle jest nieodwracalne.C. oba usuwają tylko zawartość, ale tylko
DROP TABLE da się cofnąćŹle.
DROP usuwa całą tabelę, nie tylko zawartość.D.
DROP TABLE usuwa tabelę, a TRUNCATE TABLE usuwa wszystkie dane, zostawiając pustą tabelęDobrze. To poprawne rozróżnienie.
DROP TABLE usuwa CAŁĄ tabelę - razem ze strukturą (kolumnami, definicją), więc tabela przestaje istnieć. TRUNCATE TABLE kasuje tylko wszystkie WIERSZE, zostawiając pustą tabelę gotową do dalszego użycia. Dlatego DROP usuwa tabelę, a TRUNCATE czyści dane, zostawiając pustą tabelę.Trzeba odróżnić usunięcie tabeli od jej opróżnienia.
TRUNCATE nie usuwa danych „wg warunku” (to robi DELETE ... WHERE) - kasuje WSZYSTKIE wiersze naraz. DROP nie zostawia pustej tabeli, lecz usuwa ją w całości. Różnica: DROP TABLE usuwa tabelę, a TRUNCATE TABLE tylko jej zawartość, zostawiając pustą strukturę.