Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

(c) 1999, Instytut Informatyki Politechniki Poznańskiej Rozdział 8: Perspektywy i sekwencery.

Podobne prezentacje


Prezentacja na temat: "(c) 1999, Instytut Informatyki Politechniki Poznańskiej Rozdział 8: Perspektywy i sekwencery."— Zapis prezentacji:

1 (c) 1999, Instytut Informatyki Politechniki Poznańskiej Rozdział 8: Perspektywy i sekwencery

2 (c) 1999, Instytut Informatyki Politechniki Poznańskiej Perspektywa perspektywa (ang. view) jest strukturą logiczną udostępniającą wybrane informacje przechowywane w relacjach bazy danychperspektywa (ang. view) jest strukturą logiczną udostępniającą wybrane informacje przechowywane w relacjach bazy danych własnościwłasności –definiowana w oparciu o relacje (relacje bazowe) lub inne perspektywy (perspektywy bazowe), –nie posiada własnych danych –przechowywana w postaci zapytania

3 (c) 1999, Instytut Informatyki Politechniki Poznańskiej Perspektywa cd. cel stosowaniacel stosowania –ograniczenie dostępu do danych - zabezpieczenie przed nieautoryzowanym dostępem –uproszczenie schematu bazy danych -> uproszczenie zapytań –uniezależnienie aplikacji od zmian w strukturze bazy danych –prezentowanie danych w inny sposób niż dane w relacjach i perspektywach bazowych (m.in. zmiana nazw atrybutów, formaty danych)

4 (c) 1999, Instytut Informatyki Politechniki Poznańskiej Rodzaje perspektyw prosteproste –jedna relacja bazowa –brak funkcji –brak grupowania złożonezłożone –oparte o wiele relacji bazowych –wykorzystują operatory zbiorowe, funkcje, grupowanie

5 (c) 1999, Instytut Informatyki Politechniki Poznańskiej Tworzenie perspektywy CREATE [OR REPLACE] VIEW nazwa_perspektywy [( atrybut1, atrybut2...)] AS SELECT ciało_polecenia_SELECT [WITH READ ONLY] [WITH CHECK OPTION [CONSTRAINT nazwa_ogr]]; CREATE [OR REPLACE] VIEW nazwa_perspektywy [( atrybut1, atrybut2...)] AS SELECT ciało_polecenia_SELECT [WITH READ ONLY] [WITH CHECK OPTION [CONSTRAINT nazwa_ogr]]; CREATE OR REPLACE VIEW prac_zesp AS SELECT id_prac, nazwisko, etat, placa_pod, p.id_zesp, nazwa FROM pracownicy p, zespoly z WHERE p.id_zesp=z.id_zesp; CREATE OR REPLACE VIEW prac_zesp AS SELECT id_prac, nazwisko, etat, placa_pod, p.id_zesp, nazwa FROM pracownicy p, zespoly z WHERE p.id_zesp=z.id_zesp;

6 (c) 1999, Instytut Informatyki Politechniki Poznańskiej Tworzenie perspektywy cd. CREATE VIEW wysokie_place (nazwisko, placa_pod, etat) AS SELECT nazwisko, placa_pod, etat FROM pracownicy WHERE placa_pod > 1000 WITH CHECK OPTION CONSTRAINT placa_powyzej_1000; CREATE VIEW wysokie_place (nazwisko, placa_pod, etat) AS SELECT nazwisko, placa_pod, etat FROM pracownicy WHERE placa_pod > 1000 WITH CHECK OPTION CONSTRAINT placa_powyzej_1000;

7 (c) 1999, Instytut Informatyki Politechniki Poznańskiej Tworzenie perspektywy cd. jeśli ciało polecenia SELECT wykorzystuje:jeśli ciało polecenia SELECT wykorzystuje: –operatory zbiorowe, –funkcje grupowe, –klauzule GROUP BY, –operator DISTINCT, to do perspektywy można kierować tylko polecenie SELECT; ciało polecenia SELECT nie może zawierać klauzuli:ciało polecenia SELECT nie może zawierać klauzuli: –ORDER BY

8 (c) 1999, Instytut Informatyki Politechniki Poznańskiej Perspektywa oparta o kilka relacji bazowych SELECTSELECT wykonanie polecenia UPDATEUPDATE DELETEDELETE INSERTINSERT zawszezawsze tylko dla jednej z relacji bazowych zawierającej klucz obcy tylko dla jednej z relacji bazowych zawierającej klucz obcy i perspektywa musi udostępniać wszystkie atrybuty obowiązkowe tej relacji

9 (c) 1999, Instytut Informatyki Politechniki Poznańskiej Kompilowanie perspektywy Usuwanie perspektywy ALTER VIEW nazwa_perspektywy COMPILE; DROP VIEW nazwa_perspektywy; Słownik bazy danych opis zdefiniowanych perspektywopis zdefiniowanych perspektyw –USER_VIEWS informacje o możliwości uaktualniania danych dostępnych przez perspektywęinformacje o możliwości uaktualniania danych dostępnych przez perspektywę –USER_UPDATABLE_COLUMNS

10 (c) 1999, Instytut Informatyki Politechniki Poznańskiej Tworzenie sekwencera CREATE SEQUENCE [nazwa_użytkownika] nazwa_sekwencera [INCREMENT BY liczba] [START WITH wartość_początkowa]; CREATE SEQUENCE [nazwa_użytkownika] nazwa_sekwencera [INCREMENT BY liczba] [START WITH wartość_początkowa]; sekwencer (ang. sequence) jest obiektem bazy danych, który automatycznie zwiększa swoją wartość o zadany krok, po każdorazowym odczycie z niego wartościsekwencer (ang. sequence) jest obiektem bazy danych, który automatycznie zwiększa swoją wartość o zadany krok, po każdorazowym odczycie z niego wartości wykorzystywany jest m.in. do generowania unikalnych identyfikatorów krotekwykorzystywany jest m.in. do generowania unikalnych identyfikatorów krotek CREATE SEQUENCE seq_pracownik INCREMENT BY 10 START WITH 1000; CREATE SEQUENCE seq_pracownik INCREMENT BY 10 START WITH 1000;


Pobierz ppt "(c) 1999, Instytut Informatyki Politechniki Poznańskiej Rozdział 8: Perspektywy i sekwencery."

Podobne prezentacje


Reklamy Google