Zadania do wykonania na laboratorium
Transkrypt
Zadania do wykonania na laboratorium
Laboratorium Oracle Katowice 2013 – SQL Podstawy 1 Zadania do wykonania na laboratorium Przykładowe pomocne strony www: http://www.adp-gmbh.ch/ora/sql/ http://www.uz.zgora.pl/~agramack/files/BazyDanych/sql_oracle.pdf http://www.wykop.pl/ramka/516995/darmowy-kurs-oracle-sql/ http://edu.pjwstk.edu.pl/wyklady/szb/scb/rw14.htm http://bc.pollub.pl/Content/675/eksploatacja.pdf http://www.uz.zgora.pl/~agramack/files/BazyDanych/ORACLE.pdf 1 1.1 Czynności wstępne Otworzyć skrypt tworzący bazę http://platforma.polsl.pl/rau2/mod/folder/view.php?id=9975 → baza_danych.sql danych: Zapoznać się ze strukturą przykładowej bazy danych. Narysować jej schemat fizyczny obejmujący klucze główne, obce, wymagania not null. 1.2 Uruchomić maszynę wirtualną. 1.3 Uruchomienie DBA-Studio i SQL-Worksheet: START PROGRAMY (All Programs) ORAClient10g... Application Development SQLPlus Worksheet 2 Przygotowanie przestrzeni tabel: 2.1 Połącz się jako użytkownik SYS user: sys password: manager service: orcl connect as: sysdba 2.2 Stwórz przestrzeń tabel AP1, AP3, AP2 : create tablespace AP1 datafile 'c:\oracle\oradata\orcl\ap1.dbf' size 200K ; create tablespace AP3 datafile 'c:\oracle\oradata\orcl\ap3.dbf' size 200K ; Laboratorium Oracle Katowice 2013 – SQL Podstawy 2 create tablespace AP2 datafile 'c:\oracle\oradata\orcl\ap2.dbf' size 200K autoextend on maxsize 2M extent management local uniform size 64K; 2.3 Stwórz jednoatrybutową tabelę w przestrzeni AP1 – np.: create table example1 (a NUMBER) tablespace AP1; 2.4 Przejrzyj informacje (zawarte w słowniku bazy) o przestrzeni AP1 (perspektywa DBA_TABLESPACES) (select * from DBA_TABLESPACES) 2.5 2.6 Spróbuj usunąć przestrzeń AP1: drop tablespace AP1; Dlaczego nie udało się usunąć tej przestrzeni? 2.7 Usuń przestrzeń AP1 dodając opcję including contents 3 3.1 Uruchomienie Skryptów Tworzących bazę danych Korzystając ze skryptu baza_danych.sql utwórz bazę danych (http://platforma.polsl.pl/rau2/mod/folder/view.php?id=9975 → baza_danych.sql) 3.2 Korzystając ze skryptu baza_danych_CreateSec.sql (http://platforma.polsl.pl/rau2/mod/folder/view.php?id=9975 sekwencje. ) utwórz odpowiednie 3.3 Korzystając ze skryptu baza_danych_InsertData.sql (http://platforma.polsl.pl/rau2/mod/folder/view.php?id=9975 ) dodaj do bazy przykładowe dane. Przeanalizuj skrypty SQL. 4 Wygenerować zapytania SQL które jako wynik podadzą 4.1 Zadania wstępne: a) informacje dotyczące wszystkich pracowników zespołu numer 1 b) wszystkich kobiet c) pracowników mieszkających w Gliwicach d) pracowników o nazwiskach kończących się literą k e) Laboratorium Oracle Katowice 2013 – SQL Podstawy 3 pracowników, których nazwiska są 5-literowe f) pracowników urodzonych po 1970 roku g) ilu pracowników należy do zespołu nr 3 (użyć Count ) h) ilu jest wśród pracowników mężczyzn pracujących na stanowiskach o kodzie 2 i) podać informacje dotyczące kobiet pracujących w zespole nr 1 j) informacje dotyczące pracowników zespołów nr 2, 3 lub 5 k) informacje o pracownikach urodzonych w latach sześćdziesiątych 4.2 Zadania SQL cz2 a) sumę dochodów wypłaconych za temat nr 2; b) sumę dochodów wypłaconych za temat nr 5 pracownikowi nr 1; c) nazwisko, imie, nrt, kwoty wypłacone za temat nr 5 pracownikowi nr 1; d) nazwisko, imie, nrt, sumę dochodów wypłaconych (kolejnym) pracownikom za poszczególne tematy. Wynik posortować po nazwisku. e) nazwisko, imie, nrt, sumę dochodów za dany temat dla pracowników których dochody za dany temat przekroczyły 300, posortować po numerze tematu. 5 delete Delete from aapracownik where nrp=2; Dlaczego się nie da. Co trzeba zrobić aby usunąć pracownika. Wykonać usuwanie. Czy takie usuwanie jest bezpieczne? 6 update Update aapracownik SET imie='noweImię', telefon='123456789' WHERE nrp=9; Update aapracownik SET nrz=7 WHERE nrp=9; Dlaczego się nie da. Co trzeba zrobić aby zmodyfikować pracownika. Wykonać modyfikacje. Laboratorium Oracle Katowice 2013 – SQL Podstawy 7 1 4 Zadania SQL cz3 Zagnieżdżona instrukcja select, operator in: Podać numery i nazwiska pracowników (kobiet), które uzyskały dochody w jednym z tematów, prowadzonych przez pracownika o nazwisku ‘Kowal’: 2 Zagnieżdżona instrukcja select, operator all: Podać numery i nazwiska pracowników (mężczyzn) z zespołu ‘uczelnia’, którzy są młodsi od każdego pracownika (kobiety) z zespołu ‘admin’. 3 Zagnieżdżona instrukcja select, operator any Podać numery i nazwiska pracowników zespołu ‘www’, których pojedyncza wypłata jest większa od co najmniej jednej z wypłat pracowników zespołu ‘admin’: 4 Zagnieżdżona instrukcja select, operator exists: Podać nazwy i numery tematów, w których nie uzyskała dochodu żadna kobieta: 5 Tworzenie perspektyw - instrukcja view: Wykonać zestawienie dochodów pracowników w postaci: Nazwisko, łączna kwota zarobiona przez pracownika Usunięcie perspektywy - polecenie: Drop view zestawienie; Zadania 1, 2, 3, 4.1, 5, 6 – ocena 4.0 Zrealizowane zadania zaprezentować po ukończeniu zad. 4.1 Dodatkowo 2 podzadania z: 4.2 (c,d,e), 7 – ocena 5.0