DROP TABLE to instrukcja SQL służąca do usuwania całej tabeli z bazy danych. Należy do grupy poleceń DDL (Data Definition Language), ponieważ zmienia strukturę bazy danych.
Co usuwa DROP TABLE?
Polecenie usuwa:
- definicję tabeli,
- wszystkie dane znajdujące się w tabeli,
- powiązane z tabelą indeksy i ograniczenia.
Przykład:
DROP TABLE przedmioty;
Po wykonaniu tej instrukcji tabela przedmioty przestaje istnieć. Nie jest to zwykła modyfikacja danych, ale operacja na strukturze bazy.
Uprawnienie DROP
W systemach takich jak MySQL użytkownik może otrzymać uprawnienie DROP, np.:
GRANT DROP ON szkola.przedmioty TO uczen;
Oznacza to, że użytkownik uczen może usunąć tabelę przedmioty. Jest to wysoki poziom uprawnień, ponieważ pozwala zniszczyć strukturę tabeli i jej zawartość.
Różnica między DROP, DELETE i TRUNCATE
DROP TABLEusuwa całą tabelę wraz ze strukturą.DELETE FROMusuwa wybrane rekordy, ale tabela nadal istnieje.TRUNCATE TABLEusuwa wszystkie rekordy z tabeli, zwykle szybciej niżDELETE, ale struktura pozostaje.
W kontekście egzaminu
Jeżeli pytanie dotyczy najniższego poziomu uprawnień, DROP prawie nigdy nie będzie poprawną odpowiedzią. Jest to uprawnienie niebezpieczne i administracyjne, znacznie szersze niż samo SELECT, które pozwala tylko odczytywać dane.