BD-2st-1.2-w12.tresc-1.1-Slajd10

Z Studia Informatyczne
Wersja z dnia 12:34, 29 sie 2006 autorstwa PKrzyzagorski (dyskusja | edycje)
(różn.) ← poprzednia wersja | przejdź do aktualnej wersji (różn.) | następna wersja → (różn.)
Przejdź do nawigacjiPrzejdź do wyszukiwania

Analiza semantyczna zapytania (3)

Analiza semantyczna zapytania (3)


Rozwiązanie problemu zapytań niepoprawnie sformułowanych opiera się na konstrukcji tak zwanego grafu połączeń atrybutów. Graf połączeń atrybutów konstruujemy następująco. Dla każdej referencji do atrybutu tworzymy w grafie wierzchołek atrybutu lub wierzchołek 0. Następnie, tworzymy luk skierowany pomiędzy wierzchołkami reprezentującymi operację połączenia, oraz łuk skierowany pomiędzy wierzchołkiem atrybutu a wierzchołkiem 0, reprezentujący warunek selekcji. W kolejnym kroku nadajemy wagi lukom:

łuk: a -> b posiada wagę c, jeżeli luk reprezentuje warunek nierównościowy (a<= b+c),

łuk: 0 -> a posiada wagę -c, jeżeli luk reprezentuje warunek nierównościowy (a >= c).

łuki reprezentujące połączenia posiadają wagę 0.

Jeżeli graf połączeń atrybutów zawiera cykl, którego suma wag jest ujemna, zapytanie jest sprzeczne.


<< Poprzedni slajd | Spis treści | Następny slajd >>