BD-1st-2.4-lab12.tresc-1.1-Slajd28

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

Propagacja wyjątków (1)

Propagacja wyjątków (1)


Na powyższym slajdzie zdefiniowano przykładowy blok PL/SQL („blok zewnętrzny”), w którym zagnieżdżono inny blok („blok wewnętrzny”). Oba bloki posiadają zdefiniowane sekcje obsługi wyjątków, blok wewnętrzny z podsekcją dla wyjątku wyj_1, blok zewnętrzny z podsekcją dla wyjątku wyj_2. Zakładamy teraz, że zmienna x w bloku wewnętrznym ma wartość 1. Zostaje spełniony warunek x = 1, wykonane zostaje polecenie RAISE wyj_1, powodujące wygenerowanie w bloku wewnętrznym wyjątku wyj_1 (polecenie RAISE zostanie dokładnie przedstawione przy omawianiu wyjątków użytkownika). Sterowanie w bloku wewnętrznym zostaje przekazane do sekcji obsługi wyjątków tego bloku, tam zostaje znaleziona podsekcja odpowiedzialna za obsługę wyjątku wyj_1 i wykonane zostają polecenia określone jako sekwencja_1. Następnie sterowanie przechodzi do pierwszego polecenia po bloku, w którym została znaleziona podsekcja obsługi wyjątku, a więc do pierwszego polecenia bloku zewnętrznego, umieszczonego zaraz po słowie END, kończącym blok wewnętrzny. Program kontynuuje wykonanie.


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