ullman169 (2)

ullman169 (2)



Jak w przypadku innych perspektyw, tak samo i tu zapytanie jest traktowane jakby było równoważnym zapytaniem określonym na tabelach bazowych, czyli jako zapytanie:

SELECT nazwisko

FROM Film, FilmDyr

WHERE producentC# = cert? AND tytuł = 'Przeminęło z wiatrem';

5.8.3. Przemianowanie atrybutów

Czasami zamiast korzystać z nazw atrybutów występujących w definicji perspektywy, może się okazać wygodne, żeby w perspektywie wybrać inne nazwy dla atrybutów. Możemy to zrobić, umieszczając w instrukcji CREATE VIEW wybrane nowe nazwy w postaci listy ujętej w nawiasy, po nazwie perspektywy, a przed zapytaniem definiującym. Definicję z przykładu 5.40 możemy zapisać w następujący sposób:

CREATE VIEW FilmProd(tytułFilmu/ nazwiskoProć) AS

SELECT tytuł, nazwisko

FROM Film, FilmDyr

WHERE producenta# = cert#;

Perspektywa jest taka sama jak poprzednio, ale w nagłówkach kolumn zamiast nazw tytuł, nazwisko wystąpią teraz atrybuty o nazwach tytuł-Filmu, nazwiskoProd.

5.8.4. Modyfikowanie perspektyw

W pewnych okolicznościach można wykonywać działania wstawiania, usuwania oraz zmian perspektyw. Po pierwsze jednak trzeba określić znaczenie takich działań w przypadku perspektyw-, które przecież nie istnieją w sensie fizycznym, tak jak to występuje przy tabelach bazowych (czyli relacji przcchowyw-anych). Co zatem oznacza wstawienie krotki do perspektywy-? Gdzie ta krotka zostanie umieszczona i w jaki sposób system baz danych rozpozna, że ma ona być dołączona do danej perspektywy?

W wielu przypadkach odpowiedź jest prosta: „nie można tak robić”. Jednakże przy bardzo prostych perspektywach, tak zwanych „modyfikowalnych”, można przekładać modyfikowanie perspektywy na równoważne działanie na tabeli bazowej, które zostanie dokonane na niej zamiast na perspektywie. W języku SQL2 w- sposób formalny określa się, kiedy jest dopuszczalna modyfikacja perspektywy. Zasady zapisane w- języku SQL są skomplikowane, krótko można je streścić w następujących słowach: modyfikacje perspektyw są dopuszczalne tylko wtedy, kiedy perspektywy są zdefiniowane przez selekcję (czyli SEI.ECT lub SELECT DISTINCT) pewnych atrybutów z jednej relacji R (która sama także może być perspektywą modyfikowalną). Muszą jednak być spełnione następujące warunki techniczne:

•    Klauzula WHERE nic może zawierać zapytania dotyczącego relacji R.

   W klauzuli SELECT musi być dostatecznie dużo atrybutów po to, by dla każdej krotki, którą wstawia się do perspektywy, można było wprowadzić pozostałe atrybuty z wartościami NULL lub domyślnymi, i aby w relacji bazowej istniała krotka, która stanowi podstawę dla krotki umieszczanej w perspektywie.

PRZYKŁAD 5.41

Załóżmy, ze do perspektywy Filmy Pa ramount z przykładu 5.37 będzie wstawiana następująca krotka:

INSERT INTO FilmyParamount VALUES ('Star Trek', 1979);

Perspektywa Fi lmyParamount nieomal spełnia warunki modyfikowalności z $QL2, ponieważ wchodzą do niej dane tylko z jednej relacji

Film{tytuł, rok, długość, czyKolór, nazwaStudia, producentC#)

której krotki ograniczono do wybranych składowych. Problem pojawia się przy określaniu wartości nazwaStudia, ponieważ ten atrybut nie należy do perspektywy. Zatem jego wartością w krotce perspektywy nie jest ' Paramo-unt', lecz NULL.

Można jednak doprowadzić perspektywę Fi lmyParamount do postaci, która umożliwi wykonanie modyfikowania. Wystarczy do klauzuli SELECT dołączyć atrybut nazwaStudia, mimo iż wiemy, że to będzie nazwa Para-mount. Tak zmieniona definicja będzie miała następującą postać:

1)    CREATE VIEW FiimyParamount AS

2)    SELECT nazwaStudia, tytuł, rok

3)    FROM Film

4)    WHERE nazwaStudia = 'Paramount';

Wówczas instrukcja wstawiania krotki do perspektywy przyjmie następującą postać:

INSERT INTO FiimyParamount

VALUES ('Paramount', 'Star Trek', 1979);


Wyszukiwarka

Podobne podstrony:
KROTKA GRAMATYKA JĘZYKA JAPOŃSKIEGO Tworzenie formy -te nie jest tak regularne, jak w przypadku inny
DSC03913 resize Przegląd materiałów pozwala stwierdzić, że tak jak i na innych H
KRÓTKA GRAMATYKA JĘZYKA JAPOŃSKIEGO Tworzenie formy -te nie jest tak regularne, jak w przypadku inny
ZAMEK KRÓLEWSKI W OJCOWIE Podobnie jak w przypadku pozostałych zamczysk. tak i tu początki warowni s
RYZYKO ROŚNIE Z WIEKIEM Podobnie jak w przypadku innych nałogów, różne dróg: prowadza do uzależ
osadowe chem org 2 W opisie makroskopowym, podobnie jak w przypadku innych grup skał, uwzględnia si
Podobnie jak w przypadku innych pojęć, Wittgenstein nie podaje żadnej jednoznacznej definicji formy
Uwagi dotyczące monitorowania VS I ST Podobnie jak w przypadku Innych monitorowanych parametrów, pew
ogrzewanie(1) Jak ogrzewać Danuta Strzelecka Tak samo, jak jest wiele sposobów wykończenia budowy do
21. Czy są jakieś ograniczenia w przypadku kosztorysu projektu? Tak. Bardzo ważną kwestią jest aby k
Sponsorzy2001 58 tak samo, juk zawsze jest i było więcój jioczyi, w swobodnej wiejszczyznie, niż
Tak samo jak miało to miejsce w przypadku sprężarek tak i również w przypadku zaworow możemy dokonać

więcej podobnych podstron