Pytanie dotyczy operacji DDL (Data Definition Language), czyli zmiany struktury tabeli w bazie danych. Gdy chcemy dodać nową kolumnę do istniejącej tabeli, w typowych systemach zarządzania bazą danych stosuje się polecenie:
ALTER TABLE nazwa_tabeli ADD nazwa_kolumny typ(długość);
Dlatego odpowiedź "ALTER TABLE Towar ADD rozmiar varchar(20);" jest właściwa: wskazuje tabelę Towar, dodaje kolumnę rozmiar i nadaje jej typ znakowy varchar z limitem 20 znaków.
Dlaczego pozostałe propozycje są błędne?
- "ALTER TABLE Towar DROP COLUMN rozmiar varchar(20);" – czasownik DROP COLUMN oznacza usunięcie kolumny, a nie jej dodanie. Dodatkowo w wielu dialektach po DROP COLUMN nie podaje się ponownie typu.
- "ALTER TABLE Towar ALTER COLUMN rozmiar varchar(20);" – ta konstrukcja służy do modyfikacji istniejącej kolumny (np. zmiany typu lub własności), a nie do tworzenia nowej. Jeżeli kolumna nie istnieje, polecenie nie spełnia celu pytania.
- "ALTER TABLE Towar CREATE COLUMN rozmiar varchar(20);" – fraza CREATE COLUMN nie jest standardowym elementem składni ALTER TABLE w popularnych SZBD; "CREATE" dotyczy zwykle tworzenia obiektów (np. CREATE TABLE), a nie dodawania kolumn w ALTER TABLE.
W praktyce warto pamiętać zasadę: ADD = dodaj nowy element, ALTER (kolumny) = zmień istniejący, DROP = usuń. Na egzaminie zwracaj uwagę na czasownik operacji, bo to on przesądza o tym, czy modyfikujesz schemat zgodnie z poleceniem.