Polecenie GRANT należy do grupy poleceń kontroli dostępu (DCL) i służy do nadawania uprawnień do obiektów bazy danych (np. tabel, widoków) użytkownikom lub rolom.
W zapisie GRANT ALL PRIVILEGES ON klienci TO pracownik kluczowe są trzy elementy:
- ALL PRIVILEGES – oznacza nadanie pełnego zestawu uprawnień, jakie można nadać do wskazanego obiektu (dla tabel typowo są to m.in. odczyt danych, wstawianie, modyfikacja i usuwanie wierszy; mogą też dochodzić uprawnienia administracyjne zależne od systemu).
- ON klienci – wskazuje obiekt, którego dotyczą prawa, czyli tabelę o nazwie "klienci".
- TO pracownik – określa adresata, czyli użytkownika (lub rolę, zależnie od systemu) o nazwie "pracownik".
Dlatego poprawna interpretacja brzmi: polecenie nadaje wszystkie uprawnienia do tabeli klienci użytkownikowi pracownik.
Pozostałe odpowiedzi są błędne z typowych powodów egzaminacyjnych:
- Stwierdzenie o "odbieraniu uprawnień" myli GRANT z poleceniem REVOKE, które służy do cofania już nadanych praw.
- Opis "kopiowania uprawnień z grupy" nie odpowiada składni GRANT; w SQL nadaje się konkretne uprawnienia do obiektu, a nie "kopiuje" ich z obiektu o nazwie identycznej jak grupa.
- Odwrotne przypisanie (grupa jako obiekt, tabela jako użytkownik) narusza sens składni: po ON występuje obiekt bazy (np. tabela), a po TO podmiot otrzymujący prawa (użytkownik/rola).
W praktyce, mimo że ALL PRIVILEGES bywa wygodne w testach, na produkcji często stosuje się zasadę najmniejszych uprawnień i przyznaje tylko to, co niezbędne (np. samo SELECT dla raportów).