W SQL uprawnienia nadawane poleceniem GRANT dotyczą konkretnych operacji na konkretnym obiekcie bazy (np. tabeli). Pytanie dotyczy dwóch czynności typowo zaliczanych do DDL:
- zmiana struktury tabeli (np. dodanie/zmiana kolumny) – odpowiada uprawnieniu typu ALTER,
- usunięcie tabeli – odpowiada uprawnieniu typu DROP.
Jeżeli przedstawione polecenia GRANT nadają właśnie te uprawnienia (bezpośrednio lub w zestawie uprawnień obejmującym ALTER i DROP) określonym użytkownikom, to prawo do zmiany struktury tabeli oraz jej usuwania mają dokładnie ci użytkownicy, którzy zostali wskazani jako beneficjenci GRANT dla tych operacji.
Dlaczego poprawna jest odpowiedź "Adamowi i Annie"?
Bo to oni są adresatami uprawnień odpowiadających operacjom ALTER i DROP w pokazanych poleceniach GRANT, a zatem mogą wykonywać działania modyfikujące schemat tabeli oraz usuwać tabelę.
Dlaczego pozostałe odpowiedzi są niepoprawne?
- "tylko Annie" – byłaby prawdziwa wyłącznie wtedy, gdyby GRANT przyznawał uprawnienia DDL wyłącznie Annie, bez nadania ich Adamowi.
- "Tomaszowi i Annie" – byłaby prawdziwa, gdyby uprawnienia ALTER/DROP otrzymał Tomasz zamiast Adama.
- "Tomaszowi i Adamowi" – byłaby prawdziwa, gdyby uprawnienia DDL pomijały Annę, a obejmowały Tomasza.
Na egzaminie warto pamiętać o typowym rozdziale ról: uprawnienia DML (SELECT/INSERT/UPDATE/DELETE) nie oznaczają automatycznie prawa do zmian w strukturze tabeli. Uprawnienia do DDL (ALTER/DROP) są zwykle przyznawane węższej grupie użytkowników, bo mają duży wpływ na działanie aplikacji i bezpieczeństwo danych.