zadania - zti.polsl.pl
Transkrypt
zadania - zti.polsl.pl
1. Uruchomić program poprzez kolejno: SQL DDL – plan ćwiczenia: - uruchomienie serwera MySQL: run-server.bat - klienta HeidiSQL: run-client.bat 2. (domyślne połączenie: ‘-u=root -h=localhost -P=6033’użytkownik root z pustym hasłem, do localhost na porcie 6033). Jako root wybierając bazę uczelnia utworzyć nowe tabele zesp1 oraz prac1 tak, by spełnione były następujące warunki (obejrzeć sobie HELP w programie HeidiSQL w kategorii Data Definition, m.in. instrukcje create, drop, alter): • Tabela zesp1 powinna posiadać następujące kolumny: nr_zesp smallint (6) nazwa_zesp char (30) nr_prac_kz int (11) nr_inst smallint (6) Kluczem głównym tabeli zesp1 jest nr_zesp. • Tabela prac1 powinna posiadać następujące kolumny: nr_prac int(11) plec char (1) data_ur datetime nazwisko char (15) Nr_zesp smallint (6) Kluczem głównym tabeli prac1 jest nr_prac. Dodatkowo kolumna plec nie może posiadać wartości pustych. Na kolumnie nr_zesp tabeli prac1 powinien zostać utworzony indeks. 3. Wpisywanie danych do tabel (obejrzeć sobie zawartość HELP w kategorii Data Manipulation, .m.in. instrukcję insert, delete, select): • Wykorzystując utworzone już wcześniej w systemie tabele, wprowadzić należy do tabeli zesp1 wszystkie wiersze z tabeli ZESPOLY oraz do tabeli prac1 wszystkie wiersze z tabeli PRACOWNICY. • 4. Dołożyć do tabeli prac1 nowy wiersz z wartościami (50, 'M', '1950-12-12', 'KOWALSKI', 3), a następnie go usunąć. Tak zmodyfikować tabele, by: • W tabeli zesp1 kluczem obcym była kolumna nr_prac_kz, dla której kluczem głównym jest kolumna nr_prac w tabeli prac1. Należy zapewnić, by w przypadku próby usunięcia pracownika z tabeli prac1, próba ta nie powiodła się, gdy istnieje wiersz o tej samej wartości klucza obcego w tabeli podrzędnej zesp1. • Kolumna nr_zesp jest kluczem obcym w tabeli prac1 i należy zapewnić, by przy kasowaniu wierszy w tabeli nadrzędnej zesp1 w miejsce wartości kluczy obcych odpowiadających wartości kasowanego klucza głównego wpisywane były wartości NULL, a wiersze te nie były usuwane z tabeli. 5. Wykonać kilka ćwiczeń sprawdzających poprawność działania więzów referencyjnych, pod kątem wprowadzania wartości pustych, powtarzających się wartości oraz kasowania wierszy mających swych odpowiedników w tabelach podrzędnych oraz dokonywania zmian wartości. 6. Tworzenie użytkowników i przydzielanie im uprawnień (obejrzeć sobie HELP w programie HeidiSQL w kategorii Account Management, m.in. instrukcje create user, grant): • utworzyć użytkownika userX i nadać mu uprawnienia do przeglądania tabeli prac1 podłączyć się do bazy jako userX (menu FILE->SESSION MANAGER, localhost na porcie 6033): o Obejrzeć rekordy w tabeli prac1 o Usunąć rekordy z tabeli prac1 o Obejrzeć rekordy w tabeli zesp1 przełączyć się na użytkownika root: • Nadać użytkownikowi userX prawo do usuwania rekordów w tabeli zesp1 przełączyć się na użytkownika userX: o o Obejrzeć rekordy w tabeli zesp1 Usunąć zespoł nr 1 Co się stało i dlaczego? 1 przełączyć się na użytkownika root: • Nadać użytkownikowi userX prawo do przeglądania tabeli zespoły przełączyć się na użytkownika userX: o Usunąć zespoł nr 1 Co się stało i dlaczego? przełączyć się na użytkownika root: • Utworzyć perspektywę stud zawierającą numery i nazwiska studentów wraz z ich średnimi ocenami' • Nadać użytkownikowi userX prawo do przeglądania perspektywy stud przełączyć się na użytkownika userX: o Obejrzeć rekordy w tabeli/widoku stud o o Obejrzeć rekordy w tabeli studenci Zmienić nazwisko studenta TUREK na GREK (instrukcja update) Co się stało i dlaczego? przełączyć się na użytkownika root: • Nadać użytkownikowi userX prawo do modyfikowania danych w perspektywie stud przełączyć się na użytkownika userX: o Zmienić nazwisko studenta TUREK na GREK Co się stało i dlaczego? przełączyć się na użytkownika root: • Zmienić nazwisko studenta TUREK na GREK używając perspektywy stud Co się stało i dlaczego? • Utworzyć perspektywę stud2: wypisującą nazwiska studentów. • Zmienić nazwisko studenta TUREK na GREK używając perspektywy stud2 Co się stało i dlaczego? • Nadać użytkownikowi userX prawo do oglądania i modyfikacji perspektywy stud2 przełączyć się na użytkownika userX: o Zmienić nazwisko studenta GREK na TUREK używając perspektywy stud2 Co się stało i dlaczego? przełączyć się na użytkownika root: • Utworzyć użytkownika pomX • Nadać użytkownikowi pomX prawo do przeglądania tabeli przedmioty podłączyć się do bazy jako pomX (menu FILE->SESSION MANAGER, localhost na porcie 6033): * Obejrzeć rekordy w tabeli przedmioty * Nadać użytkownikowi userX prawo do przeglądania tabeli przedmioty Co się stało i dlaczego? przełączyć się na użytkownika root: • Nadać użytkownikowi pomX prawo do przeglądania tabeli przedmioty z możliwością delegacji praw (WITH GRANT OPTION) przełączyć się na użytkownika pomX * Nadać użytkownikowi userX prawo do przeglądania tabeli przedmioty Co się stało i dlaczego? przełączyć się na użytkownika userX: o Obejrzeć rekordy w tabeli przedmioty 2