*/
W sekcji DECLARE określa się typy zmiennych, stałych, kolekcji, i typów zdefiniowanych przez użytkownika.
Pomiędzy BEGIN i END znajduje się kod wykonywany przez procedurę.
Wyjątki, błędy pojawiające się podczas wykonywania kodu, występują w jednym z dwóch typów:
Wyjątki pre-definiowane (wstępnie zdefiniowane wyjątki). Wyjątki zdefiniowane przez użytkownika.
Wyjątki zdefiniowane przez użytkownika można uruchomić przy pomocy komendy RAISE, składnia : RAISE <exception name>; Oracle zdefiniowało wstępnie podstawowe wyjątki np. NO_DATA_FOUND, TOO_MANY_ROWS, itp. Każdy wyjątek posiada numer błędu (SQL Error Number) i związaną z nim treść (SQL Error Message). Dostęp do numeru i treści błędu można uzyskać poprzez użycie funkcji SQLCODE i SQLERRM.
Zmienne W bloku deklaracji, jak sama nazwa wskazuje, deklaruje się i (opcjonalnie) inicjalizuje zmienne. Jeśli zmienna nie jest zainicjowana jej wartość jest automatycznie ustawiana na NULL.
Przykład:
declare liczba1 number(2); liczba2 number(4,2) := 17.25; text1 varchar2(12) := 'Waldek'; data1 date := SYSDATE;