ZSBD-2st-1.2-lab8.tresc-1.3-Slajd21

Z Studia Informatyczne
Wersja z dnia 10:33, 10 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

Zagnieżdżone tabele – SQL

Zagnieżdżone tabele – SQL


Z poziomu języka SQL, z zagnieżdżonych tabel można korzystać w sposób analogiczny do tablic o zmiennej długości. Wszystkie przykłady przedstawione wcześniej dla tablic o zmiennej długości są poprawne również dla zagnieżdżonych tabel. Zagnieżdżone tabele mają jednak więcej możliwości, które zostaną zademonstrowane na tym, oraz na kolejnych slajdach. Demonstrację zacznijmy od utworzenia typu obiektowego ZAKUP (przykład (1)), który reprezentuje pojedynczy zakup zarejestrowany przez kasę w supermarkecie. Polecenie (2) tworzy tabelę obiektową pozwalającą na składowanie obiektów typu ZAKUP. Należałoby w tym miejscu wytłumaczyć po co w poleceniu tym dodano „... NESTED TABLE ZAWARTOSC_KOSZYKA STORE AS TOWARY_W_KOSZYKACH;”. W przeciwieństwie do tablic o zmiennej długości, zawartość tabel zagnieżdżonych jest składowana w osobnej tabeli zarządzanej przez bazę danych. Tabela ta nie jest dostępna w standardowy sposób, a do jej wartości można się dostać jedynie poprzez odczytywanie zawartości kolekcji. Przy tworzeniu tabeli obiektowej, która posiada atrybut typu zagnieżdżonej tabeli, konieczne jest podanie nazwy osobnej tabeli, w której będą składowane dane z kolekcji. Do tego służy właśnie wyrażenie NESTED TABLE. Po słowach kluczowych NESTED TABLE podaje się nazwę atrybutu, który przechowuje kolekcje, następnie podaje się słowa kluczowe STORE AS i ostatecznie nazwę dodatkowej tabeli. Ponieważ dane z kolekcji są przechowywane w tabeli, to po zapisaniu kolekcji do bazy danych i odczytaniu jej, porządek w danych może nie zostać zachowany. Polecenia (3) i (4) wstawiają dane do tabeli ZAKUPY. Jak łatwo zauważyć, wstawianie całych tabel zagnieżdżonych niczym się nie różni od wstawiania tablic o zmiennym rozmiarze.


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