DROP DATABASE w SQL

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

DROP DATABASE to polecenie SQL służące do usunięcia całej bazy danych wraz z jej obiektami, np. tabelami, widokami, procedurami i danymi. Jest to instrukcja z grupy DDL (Data Definition Language), ponieważ zmienia strukturę systemu baz danych.

Składnia

DROP DATABASE nazwa_bazy;

Przykład usunięcia bazy danych o nazwie firma:

DROP DATABASE firma;

W pytaniach egzaminacyjnych ważne jest rozpoznanie pełnej składni. Samo DROP firma; jest niepoprawne, ponieważ nie określa, jaki obiekt ma zostać usunięty. SQL wymaga podania typu obiektu, np. DATABASE, TABLE, VIEW.

Ostrożność przy użyciu

Polecenie DROP DATABASE jest niebezpieczne, ponieważ usuwa bazę trwale. W praktyce przed jego wykonaniem należy:

  • upewnić się, że wskazana jest właściwa baza,
  • wykonać kopię zapasową,
  • sprawdzić uprawnienia użytkownika,
  • upewnić się, że baza nie jest używana przez aplikację.

Wariant z IF EXISTS

W wielu systemach, np. MySQL, można użyć bezpieczniejszej formy:

DROP DATABASE IF EXISTS firma;

Dzięki temu polecenie nie zwróci błędu, jeśli baza firma nie istnieje.

Różnica względem DROP TABLE

DROP DATABASE usuwa całą bazę danych, natomiast DROP TABLE usuwa tylko jedną tabelę:

DROP TABLE pracownicy;

Na egzaminie INF.03 poprawna odpowiedź dla usunięcia bazy danych to zawsze forma zawierająca słowa DROP DATABASE oraz nazwę bazy.