Źródło: Arkusze CKE
Dana jest tabela pracownicy. Polecenie MySQL usuwające wszystkie rekordy z tabeli, dla których nie wypełniono pola rodzaj_umowy, ma postać
Warianty odpowiedzi
-
A
DROP pracownicy FROM rodzaj_umowy = 0;
-
B
DELETE FROM pracownicy WHERE rodzaj_umowy IS NULL;
-
C
DROP pracownicy WHERE rodzaj_umowy IS NULL;
-
D
DELETE pracownicy WHERE rodzaj_umowy = 'brak';
Wyjaśnienie
W bazach danych brak wartości nie oznacza pustego tekstu ani zera, lecz specjalną wartość NULL, czyli stan nieokreślony.
Aby usunąć konkretne wiersze z tabeli, stosujemy polecenie DELETE FROM nazwa_tabeli z odpowiednim warunkiem w klauzuli WHERE.
Do sprawdzania, czy pole zawiera wartość NULL, w języku SQL używamy wyłącznie dedykowanego operatora IS NULL. Zwykły znak równości tu nie zadziała, ponieważ z wartością NULL nie da się porównywać tradycyjnymi operatorami.
Warto też uważać na polecenie DROP. Rozkaz DROP TABLE usuwa całą strukturę tabeli wraz z wszystkimi danymi z bazy, podczas gdy DELETE czyszczą wyłącznie wybrane wiersze, pozostawiając samą tabelę nienaruszoną.