Przejdź do głównej treści

Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

Zawód: Technik informatyk, Technik programista

Kategorie: Bazy danych Administracja serwerem i bezpieczeństwo

Słowa kluczowe: DCL w SQL DELETE w SQL DML w SQL REVOKE w MySQL

Polecenie MySQL pokazane poniżej spowoduje, że użytkownikowi tkowal zostaną

GRANT DELETE, UPDATE ON pracownicy TO 'tkowal'@'localhost';
A. przydzielone uprawnienia do usuwania i modyfikacji danych w tabeli pracownicy
Dobrze. GRANT nadaje prawa DELETE (usuwanie) i UPDATE (zmiana danych) do tabeli pracownicy.
B. przydzielone uprawnienia do usuwania i dodawania rekordów w tabeli pracownicy
Źle. Dodawanie rekordów to uprawnienie INSERT, którego polecenie nie zawiera.
C. odebrane uprawnienia do usuwania i modyfikacji danych w tabeli pracownicy
Źle. Uprawnienia odbiera REVOKE ze słowem FROM. Tu jest GRANT ze słowem TO.
D. przydzielone uprawnienia do wszelkich zmian struktury tabeli pracownicy
Źle. Zmiana struktury tabeli wymaga uprawnień ALTER lub DROP, a nie DELETE i UPDATE.

Polecenie GRANT przydziela uprawnienia wymienione po przecinku. DELETE pozwala usuwać wiersze, a UPDATE zmieniać wartości w istniejących wierszach, więc tkowal może od teraz usuwać i modyfikować dane w tabeli pracownicy. Zapis 'tkowal'@'localhost' oznacza konto tkowal łączące się z tego samego komputera, na którym działa serwer.

Uprawnienia sumują się z tymi, które konto miało wcześniej. Gdyby tkowal nie miał prawa SELECT, mógłby wykonać tylko polecenia bez warunku odczytującego dane, np. DELETE FROM pracownicy;, bo WHERE wymaga odczytu kolumn. Prawa można odebrać poleceniem REVOKE DELETE, UPDATE ON pracownicy FROM 'tkowal'@'localhost';.

Łatwo pomylić GRANT z REVOKE, bo oba polecenia mają tę samą budowę. Różni je słowo przed nazwą konta: GRANT ... TO nadaje uprawnienia, a REVOKE ... FROM je odbiera. Tu stoi TO, więc prawa są przydzielane.

Zmiany struktury tabeli, np. dodanie kolumny czy zmiana typu, wymagają uprawnienia ALTER, a usunięcie całej tabeli uprawnienia DROP. DELETE i UPDATE dotyczą wyłącznie danych w wierszach.

Dodawanie rekordów to uprawnienie INSERT, którego w poleceniu nie ma. UPDATE zmienia zawartość istniejących wierszy, ale nie tworzy nowych.

Kolejność słów w poleceniu jest stała: najpierw lista uprawnień, potem ON i obiekt, na końcu TO i konto. Lista może zawierać dowolne prawa do danych, np. SELECT, INSERT, UPDATE, DELETE. W tym poleceniu są tylko dwa, więc tkowal może usuwać wiersze i zmieniać ich zawartość, ale nie może dodawać nowych rekordów ani przebudowywać tabeli.

Wymagane logowanie

Ocenianie trudności pytań jest dostępne tylko dla zalogowanych użytkowników. Zaloguj się, aby skorzystać z pełni możliwości platformy.

Twoja ocena pomoże innym uczniom w przygotowaniu do egzaminu, a Tobie pozwoli na dostęp do spersonalizowanych statystyk.

Zgłoś błąd w pytaniu

Rozwiń sekcję i zmień pole, którego dotyczy błąd. Wysłane zostaną tylko zmienione sekcje.

Błędna kwalifikacja
Błąd w treści pytania
Błąd w treści odpowiedzi
Błąd w obrazie
Dane kontaktowe (opcjonalnie)
Podaj email, jeśli chcesz otrzymać informację o rozpatrzeniu zgłoszenia.