DROP TABLE w SQL

Słownik kwalifikacji INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

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 TABLE usuwa całą tabelę wraz ze strukturą.
  • DELETE FROM usuwa wybrane rekordy, ale tabela nadal istnieje.
  • TRUNCATE TABLE usuwa 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.