zadania

Transkrypt

zadania
Bazy danych - laboratorium 3
DML – INSERT
1. Wstaw do tabeli pracownicy, pracownika o następujących danych: numer - 9781, nazwisko
- PARMOWSKI, stanowisko - AKWIZYTOR, szef - 9235, zatrudniony dzisiaj, placa - 1150,
dzial- 70.
2. Wstaw do tabeli pracownicy, pracownika o następujących danych: numer - 9782, nazwisko CIESZKOWSKI, stanowisko - LABORANT, szef - 9332, zatrudniony za 12 dni, placa - 1200.
3. Wstaw do tabeli pracownicy, pracownika o następujących danych: numer - 9783, nazwisko BIDULA, stanowisko - PARKTYKANT, zatrudniony dzisiaj, najniższa mozliwa płaca przewidziana na stanowisku praktykanta.
4. Dodaj do tabeli stanowisk, etaty głównych operatorów, logistyków i technologów z placa
minimalna większą o 500 od ich podstawowych odpowiedników, a z płacą maksymalną większą
o 1000.
5. Wycofaj wykonane transakcje.
6. Przenieś praktykanta na stanowisko laboranta w dziale 50, podwyższając mu płacę o 10%.
7. Podwyższ wszystkim szefom dodatek funkcyjny o 10% najniższej placy w firmie.
8. Wycofaj wykonane transakcje.
9. Usuń z tablicy pracownicy praktykanta.
10. Usuń z tablicy pracownicy logistyka, który pracuje najkrócej.
11. Wycofaj wykonane transakcje.
12. Usuń tabele pracownicy, prac_archiw, taryfikator, stanowiska i dzialy.
13. Prosze utworzyc tablice pracownicy z polami nr_akt(liczba czterocyfrowa), nazwisko (pietnastoznakowe), stanowisko (osiemnastoznakowe), kierownik (liczba czterocyfrowa), data_zatr
domyślnie dzisiejsza data, placa (siedmiocyfrowa, z dwoma cyframi po przecinku), podobnie
prowizja, zainteresowania (osiemnastoznakowe), plec (jeden znak), id_dzialu (liczba dwucyfrowa).
14. Usun tabele pracownicy;
15. Utworz ponownie tablice pracownicy, dodajac ograniczenia: nr_akt klucz główny, nazwisko
nie puste, płeć może przyjąć jedynie wartości k lub m. Dodatkowo utwórz ograniczenie na pole
placa, tak by miescila miedzy 1150 a 10000 zlotych, ograniczenie to podaj na koncu definicji
tabeli.
16. Wstaw do tablicy dwie krotki, w jednej pole data_zatr wypelnij wartoscia domyslna.
1
17. Utworz tabele dzialy z polami id_dzialu (liczba calkowita), nazwa (pietnastoznakowa), siedziba (pietnastoznakowa), naloz klucz glowny na pole id_dzialu.
18. Wstaw do tabeli dzialy wartosci (10, ZARZAD, CZESTOCHOWA) (40, MARKETING,
PARYZ).
19. Utwórz tabele pracownice, na bazie danych zwrotnych z zapytania wybierającego wszystkie
dane pracowników, których nazwiska kończą się na ’SKA’.
20. Usuń tabelę pracownice.
21. Utwórz tabelę projekty zawierająca pola: id_projektu (pieciocyfrowe, unikatowe), nazwa
(100 znaków), budzet (liczba 10-cyfrowa, z dwoma cyframi po przecinku), termin_zak (data),
nr_kierownika (referencja do nr_akt w pracownikach).
ALTER
22. Dodaj do tabeli projekty pola typ (20-znakowe) - niepuste, opis (500-znakowe), data_roz
(data).
23. Prosze nalozyc na pole data_roz wartosc domyslna w postaci daty systemowej.
24. Zmień ograniczenie nałożone na id_projektu na klucz główny.
25. Nałóż na relację projekty ograniczenie sprawdzające, czy data rozpoczęcia jest mniejsza od
terminu zakończenia.
26. Zmien nazwe kolumny opis na harmonogram.
27. Usun z tabeli pracownicy kolumny plec i zainteresowania.
28. Zaladuj skrypt pracowcnicy.sql. Zmien powiazanie miedzy tabela pracownicy i dzialy na
takie z opcja ON DELETE CASCADE, lub ON DELETE SET NULL.
29. Usun z tabeli dzialy dzial 30.
30. Wycofaj operacje.
31. Wstaw do tabeli projekty jeden dowolny wiersz.
32. Zawieś ograniczenie klucza głównego na tabeli projekty i ponownie wstaw ten sam wiersz.
33. Spróbuj przywrócić ograniczenie.
OGRANICZENIA
34 – 38. Proszę usunąć z tablicy pracownika o numerze 8902 (szefa). Proszę umieścić pracownika 8902 w tabeli prac_archiw. Proszę dodać nowego pracownika. Zmień szefa na nowego tym
, ktorzy jako kierownika maja pracownika o numerze 8902. Proszę usunąć z tablicy pracownika
2
o numerze 8902.
SEKWENCJE
39. Utworz tabele numer, zawierajaca jedno pole liczba (czterocyfrowe).
40. Utworz sekwencje liczba_seq zaczynajaca sie od 100 mająca minimalna wartosc 0, maksymalna 125, zwiekszajaca sie co 5, posiadajaca cykl.
41. Wstaw 7 wierszy do tabeli numer uzywajac sekwencji liczba_seq.
42. Modyfikuj sekwencje tak by zwiększała wartość o 6.
43. Sprawdz aktualna i nastepna wartosc sekwencji.
43. Usun powyzsza sekwencje.
INDEKSY
44. Utworz indeks na polu nazwisko w tabeli pracownicy.
45. Utworz indeks bitmapowy na polu kierownik w tabeli pracownicy.
46. Utworz indeks na polach placa minimalna i maksymalna w tabeli stanowiska.
PERSPEKTYWY
47. Utworz perspektywy studentki na bazie tabeli studenci.
48. Wybierz nazwisko, imiona i numer indeksu studentek z grupy 2, roku 3.
49. Czy mozliwe jest wstawienie danych do powyzszej perspektywy?
50. Utworz perspektywe pracownice, na bazie tabeli pracownicy (nazwiska konczace sie na SKA
i CKA).
51. Wstaw wiersz do perspektywy pracownice.
52. Utworz perspektywe tylko do odczytu, o nazwie miejsce_pracy, zawierajaca nazwisko pracownika i siedzibe dzialu, w ktorym pracuje.
53. Wstaw dane do perspektywy wszyscy_pracownicy.
54. Utworz perspektywe dzial10, zawierajaca, numer akt, nazwiska, stanowiska i numer dzialu,
pracownikow z dzialu 10, z opcja WITH CHECK OPTION.
55. Wstaw dane do perspektywy dzial10, sprobuj podac inny numer dzialu niz 10.
56. Utworz perspektywe szefowie zawierajaca numery akt, nazwiska, liczbe podwladnych, date
zatrudnienia, place, dodatki funkcyjne, prowizje i identyfikatory dzialow wszystkich szefow z
3
tabeli pracownicy.
57. Utworz perspektywe szef_small na bazie perspektywy szefowie zawierajaca jedynie nazwiska i numery akt.
58. Usun perspektywe szefowie.
59.Czy mozesz wykonac zapytanie na perspektywie szef_small?
60. Usun szef_small.
PERSPEKTYWY SLOWNIKOWE
Obejrzyj zawartośc perspektyw slownikowych:
USER_VIEWS,
USER_TABLES,
USER_UPDATABLE_COLUMNS,
USER_INDEXES,
USER_IND_COLUMNS,
USER_SEQUENCES,
USER_CATALOG.
4