Lista 7

Transkrypt

Lista 7
Mazur Zygmunt – Bazy danych, sem.letni 2005/06, ćwiczenia 7
Bazy danych - ćwiczenia 7
1. Dana jest relacyjna baza danych dla wypoŜyczalni kaset video. Klient moŜe wypoŜyczyć wiele kaset.
Kaseta moŜe być w danej chwili wypoŜyczona tylko przez jednego klienta, ale po oddaniu moŜe być
wypoŜyczona ponownie. Baza ta zawiera następujące dane:
WYPOśYCZENIA
KASETY
Nr
Data
KLIENCI
Lp NrK
DataZw
NrK Imie Nazwisko
Adres
0001 Jan
Kowalski
W-aw, Polna 2
0002 Jerzy
Nowak
Opole, Wolna 1
0003 Sylwia Kubiak
Nysa, Konna 23
0004 Marek Mareczek
Las 56
0005 Adam Kowalski
W-aw, Polna 2
Nr
Kasety
0001
Tytuł
Potop
Rok
1990
Kasety
Wyp
1
0003 0001
2.12.2004 2.12.2004
2
0002 0004
2.12.2004 5.12.2004
, 3
Pan Tadeusz 2000
0003 0001
2.12.2004 3.12.2004
0003
Access
2004
4
0001 0001
3.12.2004 4.12.2004
0004
Lalka
1982
5
0002 0002
6.12.2004
0005
Zemsta
2000
6
0003 0003
8.12.2004
7
0002 0001
8.12.2004 9.12.2004
, 0002
2. Odpowiedz na pytania w oparciu o powyŜsze dane :
1. Która kaseta była wypoŜyczona (przetrzymywana) najdłuŜej?
2. Jakie kasety i kiedy wypoŜyczył Jan Kowalski ?
3. Kto wypoŜyczał „Potop”? „Lalkę”?
4. Kto ostatni wypoŜyczał „Pana Tadeusza”?
3. Dla bazy danych z zadania 1 podaj w języku algebry relacji następujące zapytania:
1. Podaj tytuły kaset w wypoŜyczalni.
2. Podaj imiona i nazwiska klientów.
3. Podaj dane kaset wypoŜyczonych dłuŜej niŜ 1 dzień.
4. Podaj imiona i nazwiska klientów zamieszkałych Las 56.
5. Podaj nazwiska i imiona osób, którzy wypoŜyczyli dotychczas chociaŜ jedną kasetę.
6. Podaj nazwiska osób, które nie zwróciły dotychczas kasety.
7. Podaj nazwiska i imiona osób oraz tytuły kaset przez nich wypoŜyczonych.
4. Dla bazy danych z zadania 1 podaj w języku predykatów następujące zapytania:
1. Podaj tytuły kaset w wypoŜyczalni.
2. Podaj imiona i nazwiska wszystkich klientów.
3. Podaj tytuły kaset dotychczas nie wypoŜyczonych.
4. Podaj dane klientów o nazwisku Kowalski.
5. Podaj nazwiska klientów, którzy wypoŜyczyli „Pana Tadeusza”.
6. Podaj nazwiska klientów, którzy wypoŜyczyli co najmniej 3 kasety.
7. Podaj nazwiska klientów, którzy wypoŜyczyli wszystkie kasety dostępne w wypoŜyczalni.
5. Dla bazy danych z zadania 1 podaj w języku Query by Example i SQL zapytania:
1. Podaj tytuły kaset w wypoŜyczalni.
2. Podaj imiona i nazwiska wszystkich klientów.
3. Podaj tytuły kaset dotychczas nie wypoŜyczonych.
4. Podaj dane klientów o nazwisku Kowalski.
5. Podaj nazwiska klientów, którzy wypoŜyczyli „Lalkę”.
6. Podaj nazwiska klientów, którzy wypoŜyczyli co najmniej 2 kasety.
7. Podaj nazwiska klientów, którzy wypoŜyczyli wszystkie kasety dostępne w wypoŜyczalni.
8. Podaj nazwiska klientów, którzy nie wypoŜyczyli Ŝadnej kasety z wypoŜyczalni.
9. Podaj nazwiska klientów, którzy wypoŜyczyli najwięcej kaset.
6. W języku Query by Example:
1. Wykonaj aktualizację adresu Adama Kowalskiego.
2. Usuń dane o kasecie „Potop” i o wszystkich jej wypoŜyczeniach.
prof. Zygmunt Mazur
Opole, 10 maja 2006 r.

Podobne dokumenty