KWALIFIKACJA INF3 - CZERWIEC 2021 (test 2)

PYTANIE NR 18.
Dana jest tabela pracownicy o polach id, nazwisko, imie, wynagrodzenie. Kolumnę wynagrodzenie można usunąć za pomocą instrukcji
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Usunięcie kolumny z tabeli to operacja DDL wykonywana na schemacie.
Stosuje się polecenie ALTER TABLE z klauzulą DROP COLUMN, np. aby trwale usunąć pole wynagrodzenie i dane w tej kolumnie. Polecenia z DELETE dotyczą wierszy, nie kolumn.

Pełne wyjaśnienie:

W relacyjnych bazach danych zmiana struktury tabeli (czyli jej schematu) jest realizowana poleceniami z grupy DDL (Data Definition Language). Do modyfikowania istniejącej tabeli służy polecenie ALTER TABLE.

Aby usunąć pojedynczą kolumnę, typowa i poprawna składnia to użycie klauzuli DROP COLUMN. Taka operacja:

  • usuwa definicję kolumny z tabeli,
  • powoduje utratę danych przechowywanych w tej kolumnie,
  • może wymagać wcześniejszego usunięcia zależności (np. indeksów, ograniczeń, widoków) w zależności od systemu.

Odpowiedź "ALTER TABLE pracownicy DROP COLUMN wynagrodzenie;" jest właściwa, ponieważ jednoznacznie wskazuje: modyfikację tabeli pracownicy oraz usunięcie kolumny wynagrodzenie.

Pozostałe propozycje są błędne z powodów składniowych i znaczeniowych:

  • "ALTER TABLE pracownicy DELETE wynagrodzenie;" – słowo kluczowe DELETE w SQL służy do usuwania wierszy (rekordów) z tabeli, a nie do usuwania kolumn. Dodatkowo wymaga zwykle klauzuli FROM/WHERE zgodnej z danym dialektem.
  • "DROP TABLE pracownicy DELETE COLUMN wynagrodzenie;"DROP TABLE usuwa całą tabelę, a łączenie tego z "DELETE COLUMN" nie stanowi poprawnej konstrukcji SQL. To miesza dwie różne operacje.
  • "ALTER TABLE pracownicy DELETE COLUMN wynagrodzenie;" – mimo że w języku naturalnym brzmi sensownie, w standardowej składni SQL usuwa się kolumnę przez DROP COLUMN, nie przez "DELETE COLUMN".

Wskazówka egzaminacyjna: zapamiętaj rozróżnienie DROP (usuwa obiekt lub jego część ze schematu, np. tabelę/kolumnę) oraz DELETE (usuwa dane–wiersze). To najczęstsza pułapka w pytaniach o DDL/DML.

Dodatkowe pytania

Dodatkowe pytania (FAQ):

ALTER TABLE służy do zmiany struktury istniejącej tabeli (DDL), np. dodania kolumny, zmiany typu danych, dodania ograniczeń lub usunięcia kolumny.

Nie usuwa ono "rekordów" jako danych — od tego jest DELETE.

Najczęściej usuwa się kolumnę składnią ALTER TABLE z klauzulą DROP COLUMN, np. aby usunąć zbędne pole po zmianie wymagań aplikacji.

Po tej operacji dane w tej kolumnie są tracone.

DELETE jest poleceniem DML i usuwa wiersze (dane) z tabeli, zwykle z warunkiem WHERE.

Usunięcie kolumny to zmiana schematu (DDL), więc używa się ALTER TABLE ... DROP COLUMN.

Dane przechowywane w usuwanej kolumnie zostaną bezpowrotnie utracone.

W praktyce przed migracją warto wykonać kopię (backup) lub przenieść dane do innej kolumny/tabeli, jeśli są nadal potrzebne.

Nie. DROP TABLE usuwa całą tabelę (struktura + dane).

DROP COLUMN usuwa tylko wskazaną kolumnę z tabeli. To dużo "mniejsza" operacja, ale nadal destrukcyjna dla danych tej kolumny.

Najczęstsze pomyłki to:

  • mylenie DDL z DML (np. użycie DELETE zamiast DROP),
  • próby łączenia niepasujących poleceń (np. DROP TABLE z DELETE COLUMN),
  • nieuwzględnienie, że usuwana kolumna może być powiązana z indeksem lub ograniczeniem.

Idea jest taka sama (usunięcie kolumny), ale szczegóły składni i ograniczenia mogą się różnić między systemami (np. MySQL, PostgreSQL, SQL Server).

Na egzaminie zwykle oczekuje się najbardziej klasycznej postaci: ALTER TABLE ... DROP COLUMN ....

Gdy kolumna jest zbędna po refaktoryzacji (np. przeniesiono dane do innej tabeli) lub była błędnie zaprojektowana.

W praktyce robi się to w kontrolowanej migracji, po analizie zależności i z kopią zapasową.

Sprawdź definicje widoków, procedur, zapytań w aplikacji oraz zależności w bazie (indeksy, klucze obce, ograniczenia).

Warto też przejrzeć logi/monitoring zapytań, aby wykryć odwołania do kolumny w realnym ruchu.

Ćwicz na własnej bazie: tworzenie tabel, dodawanie i usuwanie kolumn, zmiany typów i ograniczeń. Ucz się różnic: CREATE/DROP/ALTER (DDL) vs SELECT/INSERT/UPDATE/DELETE (DML).

Rozwiązuj krótkie testy ze składni.

info

Około 61% zdających odpowiada poprawnie na to pytanie. średnie

W praktyce zawodowej kluczowe jest to, że usunięcie kolumny z tabeli to operacja DDL wykonywana na schemacie.Stosuje się polecenie ALTER TABLE z klauzulą DROP COLUMN, np. aby trwale usunąć pole wynagrodzenie i dane w tej kolumnie.

Źródła:

  • PostgreSQL Documentation: "ALTER TABLE" → sekcja "DROP COLUMN" (wersje bieżące), https://www.postgresql.org/docs/current/sql-altertable.html - dostęp 2026-03-04
  • MySQL 8.0 Reference Manual: "ALTER TABLE Statement" (usuwanie kolumn), https://dev.mysql.com/doc/refman/8.0/en/alter-table.html - dostęp 2026-03-04
  • Microsoft Learn: "ALTER TABLE (Transact-SQL)" (DROP COLUMN), https://learn.microsoft.com/en-us/sql/t-sql/statements/alter-table-transact-sql - dostęp 2026-03-04

Materiały:

  • Dokumentacja SQL wybranego systemu (ALTER TABLE / DROP COLUMN)
  • Ćwiczenia z DDL na przykładowej bazie (tworzenie i modyfikacja tabel)
  • Materiały do INF.3 z działu: bazy danych i język SQL

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego