background image

Ćwiczenie

Poniżej   zamieszczono   diagram   bazy   przechowującej   informacje   o   państwach,   ich   ustrojach   politycznych 
i językach urzędowych.

1. Na podstawie diagramu utwórz bazę danych o następujących tabelach:

USTROJE_POLITYCZNE

ID 

 

NUMBER(3)

NAZWA 

NOT NULL 

VARCHAR2(45)

JEZYKI

ID 

 

NUMBER(3)

NAZWA 

NOT NULL 

VARCHAR2(20)

PAŃSTWA

ID 

 

NUMBER(3)

NAZWA

NOT NULL 

VARCHAR2(50)

POWIERZCHNIA 

NOT NULL 

NUMBER

LUDNOSC

NOT NULL

NUMBER

STOLICA

NOT NULL

VARCHAR2(30)

DEWIZA

VARCHAR2(60)

DATA_ODZYSKANIA_NIEPODLEGLOSCI

DATE

ID_USTROJU

FK

NOT NULL

NUMBER(3)

PANSTWA_JEZYKI

ID_PANSTWA

FK

 

NUMBER(3)

ID_JEZYKA

FK

 

NUMBER(3)

Pogrubione nazwy oznaczają kolumny klucza głównego tabel, a symbole FK kolumny kluczy obcych.
Przyjmij dodatkowo, że 

background image

nazwy języków mają być unikalne,

powierzchnia i ludnosc muszą być liczbami dodatnimi.

Wszystkim ograniczeniom (poza ograniczeniami dotyczącymi konieczności wypełniania pól) nadaj  nazwy (tzn. 
nie pozwól, aby system generował te nazwy automatycznie). Zwróć uwagę na ograniczenia nie pozwalające na 
przechowywanie w pewnych kolumnach wartości NULL wynikające z diagramu.

2. Utwórz indeks na kolumnie  NAZWA w tabeli PANSTWA.

3. Utwórz indeks unikalny na kolumnie NAZWA w tabeli USTROJE_POLITYCZNE.

4. Wyświetl informacje o ograniczeniach nałożonych na tabelę PANSTWA.

5. Wyświetl informacje o indeksach stworzonych dla tabeli USTROJE_POLITYCZNE.

6. Wyświetl informacje o indeksach stworzonych dla tabeli JEZYKI.

7. Wpisz do tabel dane wykorzystując poniższe informacje.

Uwaga:   utwórz   sekwencję   panstwa_sekw   i   wykorzystaj   ją   do   wstawiania   wierszy   do   kolumny 
PANSTWA

Tabela USTROJE_POLITYCZNE

1

REPUBLIKA PARLAMENTARNA

2

MONARCHIA KONSTYTUCYJNA

3

REPUBLIKA FEDERALNA

4

REPUBLIKA

5

MONARCHIA PARLAMENTARNA

Tabela JEZYKI

1

ANGIELSKI

2

NIEMIECKI

3

FRANCUSKI

4

SUAHILI

5

WŁOSKI

6

CZESKI

7

POLSKI

8

ROMANSZ

9

HISZPAŃSKI

Dane dotyczące tabeli  PANSTWA i PANSTWA_JĘZYKI

ID

NAZWA

POWIERZCHNIA LUDNOŚĆ

STOLICA

DEWIZA

DATA ODZYSKANIA 
NIEPODLEGŁOŚCI

USTRÓJ POLITYCZNY

JEZYKI 
URZĘDOWE

1

CZECHY

78866

10507566

PRAGA

PRAWDA 
ZWYCIĘŻA

republika 
parlamentarna

CZESKI

2

SZWAJCARIA 41290

7725200

ZURYCH

JEDEN

 

ZA 

WSZYSTKICH, 
WSZYSCY   ZA 
JEDNEGO

24.10.1648

republika federalna

NIEMIECKI
FRANCUSKI
WŁOSKI
ROMANSZ

3

KENIA

582650

37953840

 

NAIROBI

PRACUJMY 
RAZEM

12.12.1963

republika

SUAHILI
ANGIELSKI

4

POLSKA

322575

38173000

 

WARSZAWA

11.11.1918

republika 
parlamentarna

POLSKI

5

WIELKA 
BRYTANIA

244820

62300000

 

LONDYN

BÓG   I   MOJE 
PRAWO

monarchia 
parlamentarna

ANGIELSKI

background image

8. Po wstawieniu danych zatwierdź zmiany.

9. Wyświetl kolejno zawartość poszczególnych tabel.

10. Zmień ludność Polski na 38538447.

11. Zmień powierzchnię Polski na 312679 (powierzchnia administracyjna).

12. Zatwierdź zmiany.

13. W kolumnie STOLICA zmień Warszawę  na Kraków. Wyświetl nazwy stolic wszystkich państw.

14. Wycofaj zmianę. Wyświetl nazwy stolic wszystkich państw.

15. Spraw, aby kolumna STOLICA nie była wymagana i w miejsce stolicy Szwajcarii wpisz wartość pustą.

16. Jako stolicę Szwajcarii wpisz BERNO i spraw, aby kolumna STOLICA na nowo była wymagana.

17. Jak zareaguje system, jeśli spróbujesz usunąć z tabeli JĘZYKI język angielski? A język hiszpański?

18. Usuń wiersz zawierający dane Kenii. Jeśli potrzeba usuń najpierw rekordy pokrewne.

19. Zmień nazwę tabeli PANSTWA na PANSTWA_EUROPEJSKIE. Wyświetl informacje o ograniczeniach 

nałożonych na tabelę PANSTWA_EUROPEJSKIE.

20. Zmień   nazwę   kolumny  POWIERZCHNIA  na  POWIERZCHNIA_ADMINISTRACYJNA.   Wyświetl 

informacje o kolumnach tabeli PANSTWA_EUROPEJSKIE.

21. Jak   zareaguje   system,   gdy   spróbujemy   wstawić   do   tabeli  USTROJE_POLITYCZNE  wiersz 

z identyfikatorem 9 i nazwą REPUBLIKA?

22. Utwórz   nową   tabelę  PANSTWA2  zawierającą   tylko   nazwy   państw,   których   powierzchnia 

administracyjna przekracza 100 000 km

2

. Wyświetl zawartość tej tabeli.

23. Do tabeli  PANSTWA2  dodaj wymaganą kolumnę  CZY_DANE_AKTUALNE  (zawierającą jedną literę) 

o wartości domyślnej T. Wyświetl zawartość tabeli.

24. Dodaj   do   tabeli  PANSTWA2  ograniczenie,   które   nie   pozwoli   wpisać   do   kolumny 

CZY_DANE_AKTUALNE małej litery.

25. Jak zareaguje system, gdy spróbujemy zmienić zawartość kolumny  CZY_DANE_AKTUALNE na „t” w 

wierszu zawierającym dane Polski?

26. Usuń ostatnio wprowadzone ograniczenie typu CHECK.

27. Usuń kolumnę CZY_DANE_AKTUALNE.

28. W tabeli PANSTWA2 dołóż ograniczenie unikalności kolumny NAZWA.

29. Obetnij tabelę  PANSTWA2.

30. Usuń indeks utworzony na kolumnie NAZWA w tabeli PANSTWA_EUROPEJSKIE.

31. Napisz polecenia, które usunęłyby wszystkie ze stworzonych w tym ćwiczeniu tabel oraz utworzoną 

sekwencję.