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

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania

RAISE_APPLICATION_ERROR (2)

RAISE_APPLICATION_ERROR (2)


Bieżący slajd prezentuje przykład użycia procedury RAISE_APPLICATION_ERROR. W sekcji deklaracyjnej bloku zadeklarowano dwie zmienne: v_nazwa (inicjowana przez użytkownika) i v_id_zesp. Pierwsze polecenie programu próbuje odczytać z bazy danych identyfikator zespołu, którego nazwę podał użytkownik. Jeśli odczyt się powiedzie, identyfikator zespołu zostaje zapisany w zmiennej v_id_zesp. Następnie wszystkim pracownikom, których szefowie należą do zespołu, którego numer obecnie znajduje się w v_id_zesp, usuwamy wskazania szefów (ustawiamy wartość pustą w atrybucie ID_SZEFA), a dalej usuwamy wszystkich pracowników z zespołu o numerze w v_id_zesp. Jeśli natomiast operacja odczytu identyfikatora zespołu, którego nazwę podał użytkownik, nie zakończyła się powodzeniem (np. użytkownik podał nazwę nieistniejącego zespołu), generowany jest wyjątek NO_DATA_FOUND. Sterowanie zostaje przekazane do sekcji obsługi wyjątków, tam zostaje znaleziona podsekcja dla wyjątku NO_DATA_FOUND z poleceniem RAISE_APPLICATION_ERROR, które przerywa działanie programu zgłoszeniem błędu ORA-20001 i komunikatem „Nie istnieje zespół o nazwie <nazwa zespołu>”.


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