Download as pdf or txt
Download as pdf or txt
You are on page 1of 2

Bazy danych – Lista 4

Polecenia SQL do poniższych zadań oraz ewentualne komentarze należy wysłać w pdfie na maila z
tytułem "bazy danych – lista 4 - grupa 1/2" do 17.06.2020.

Uwaga: Każde z zadań 1-6 powinno zaczynać od pierwotnego stanu bazy danych. Warto zatem
testując ciągi poleceń kończyć je poleceniem ROLLBACK;

Zadanie 1. Za pomocą jednego polecenia utwórz zespół o nazwie POZOSTALI i wartości klucza
głównego o jeden większej niż maksymalna wartość klucza w tabeli ZESPOLY. Za pomocą drugiego
polecenia przenieś tam wszystkie osoby z zespołów zawierających nie więcej niż 2 osoby. Zweryfikuj
poprawność uzyskanego wyniku.

Zadanie 2. Utwórz zespół NADMIAROWI. Czy można za pomocą jednego polecenia przenieść tam
pracowników z pozostałych zespołów w taki sposób, aby po wykonaniu polecenia w pozostałych
zespołach było nie więcej niż 2 osoby? Jeżeli tak, to czy da się ustalić w poleceniu lub poleceniach
jakiekolwiek kryterium, które to będą osoby?

Zadanie 3. Utwórz dwa nowe zespoły o nazwach PIERWSZY i DRUGI, gdzie adres pierwszego zespołu
będzie taki sam jak adres zespołu o najmniejszej średniej płacy pracowników, a adres drugiego
zespołu będzie taki jak adres zespołu o największej liczbie pracowników. Tworzenie każdego z
zespołów należy wykonać jednym poleceniem. W nowych zespołach wstaw po dwóch pracowników z
płacami podstawowymi 3000 i 4000. Za pomocą jednego polecenia uśrednij płace pracowników pod
każdym adresem. Zweryfikuj poprawność danych po modyfikacji.

Zadanie 4. Utwórz zespół KIEROWNICTWO. Zmień przynależność każdego pracownika mającego


podwładnych z jego aktualnego zespołu do zespołu KIEROWNICTWO.

Zadanie 5. Utwórz nową tabelę z kluczem obcym odnoszącym się do którejś z już istniejących tabel i
ograniczeniem ON DELETE CASCADE. Dodaj w nowo utworzonej tabeli krotki odnoszące się do jednej
z wartości klucza podstawowego do którego odnosi się klucz obcy, a następnie skasuj krotkę o tej
wartości klucza podstawowego i zweryfikuj, czy ograniczenie zostało spełnione.

Zadanie 6. Za pomocą jednego polecenia utwórz tabelę PRZODOWNICY o atrybutach imię, nazwisko,
płaca podstawowa i płaca dodatkowa oraz ograniczeniu mówiącym o tym, że płaca dodatkowa musi
wynosić co najmniej 20% płacy podstawowej, i wypełnij tę tabelę tymi pracownikami z tabeli
pracownicy, którzy nie mają podwładnych (nie są szefami). Zweryfikuj, czy dodano wyłącznie
pracowników spełniających ograniczenia.
Zadania dotyczące projektu bazy danych stworzonego na wcześniejszych zajęciach
w tym semestrze

Punktem wyjściowym do poniższych zadań jest własny kod SQL tworzący bazę danych w Oracle SQL
na podstawie modelu konceptualnego utworzonego dla własnych założeń i opisu modelowanego
świata.

Zadanie 7. Na podstawie nabytej wiedzy dotyczącej języka definiowania danych (DDL) przeanalizuj
automatycznie wygenerowany na podstawie modelu konceptualnego kod SQL tworzący bazę danych
i upewnij się, że rozumiesz wszystkie polecenia.

Zadanie 8. Dodaj do relacji korzystając z polecenia ALTER ograniczenia integralnościowe


(uzasadnione zastosowaniem) dotyczące:

• unikalności wartości – dla minimum 5 atrybutów,

• niedozwolonych wartości NULL – dla minimum 5 atrybutów,

• kontroli wartości klucza obcego w przypadku kasowania oraz zmiany wartości klucza
głównego, do którego odnosi się klucz obcy - po 3 dla każdej z 6 kombinacji ON
DELETE/UPDATE SET NULL/CASCADE/DEFAULT,

• ograniczenie domeny atrybutu – dla zadanej wartości lub zależne od wartości innego
atrybutu – dla minimum 5 atrybutów,

• inne ograniczenia integralnościowe określone dla relacji – minimum 5.

Zadanie 9. Stwórz skrypt wypełniający bazę danych danymi pozwalającymi na wykonanie Zadania 10.
Na podstawie efektów wykonania skryptu zweryfikuj działanie zdefiniowanych w Zadaniu 8
ograniczeń integralnościowych.

Zadanie 10. Zaproponuj i przetestuj dla powyższej bazy danych polecenia SELECT (uzasadnione
zastosowaniem) – minimum 20 zapytań w tym minimum 10 odnoszących się do danych z więcej niż
jednej relacji.

You might also like