PL / SQL Blok: STRUKTURA, składnia, ANONIMOWY przykład

Spisie treści:

Anonim

Co to jest blok PL / SQL?

W PL / SQL kod nie jest wykonywany w formacie jednowierszowym, ale zawsze jest wykonywany poprzez zgrupowanie kodu w pojedynczy element o nazwie Bloki. W tym samouczku dowiesz się o tych blokach.

Bloki zawierają zarówno instrukcje PL / SQL, jak i SQL. Wszystkie te instrukcje będą wykonywane jako całość, a nie wykonywane pojedynczo.

W tym samouczku dowiesz się:

  • Co to jest blok PL / SQL?
  • Struktura blokowa
  • Składnia bloku PL / SQL
  • Rodzaje bloków PL / SQL

Struktura blokowa

Bloki PL / SQL mają predefiniowaną strukturę, w której ma być grupowany kod. Poniżej znajdują się różne sekcje bloków PL / SQL.

  1. Sekcja deklaracji
  2. Sekcja wykonawcza
  3. Sekcja obsługi wyjątków

Poniższy rysunek ilustruje różne bloki PL / SQL i ich kolejność sekcji.

Sekcja deklaracji

To jest pierwsza sekcja bloków PL / SQL. Ta sekcja jest częścią opcjonalną. Jest to sekcja, w której zostaną zadeklarowane deklaracje zmiennych, kursorów, wyjątków, podprogramów, instrukcji pragma i kolekcji, które są potrzebne w bloku. Poniżej znajduje się kilka innych cech tej części.

  • Ta konkretna sekcja jest opcjonalna i można ją pominąć, jeśli nie są potrzebne żadne deklaracje.
  • Powinna to być pierwsza sekcja w bloku PL / SQL, jeśli jest obecna.
  • Ta sekcja zaczyna się od słowa kluczowego „DECLARE” dla wyzwalaczy i anonimowego blokowania. W przypadku innych podprogramów to słowo kluczowe nie będzie obecne. Zamiast tego część po definicji nazwy podprogramu oznacza sekcję deklaracji.
  • Po tej sekcji powinna zawsze następować sekcja wykonania.

Sekcja Wykonawcza

Część wykonawcza jest główną i obowiązkową częścią, która faktycznie wykonuje kod, który jest w niej zapisany. Ponieważ PL / SQL oczekuje instrukcji wykonywalnych z tego bloku, nie może to być pusty blok, tj. Powinien zawierać co najmniej jedną prawidłową linię kodu wykonywalnego. Poniżej znajduje się kilka innych cech tej części.

  • Może zawierać zarówno kod PL / SQL, jak i kod SQL.
  • Może zawierać jeden lub wiele bloków w sobie jako blok zagnieżdżony.
  • Ta sekcja zaczyna się od słowa kluczowego „BEGIN”.
  • Po tej sekcji należy umieścić sekcję „KONIEC” lub sekcja Obsługa wyjątków (jeśli istnieje)

Sekcja obsługi wyjątków:

Wyjątek jest nieunikniony w programie, który występuje w czasie wykonywania, a do obsługi tego Oracle udostępniła sekcję obsługi wyjątków w blokach. Ta sekcja może również zawierać instrukcje PL / SQL. To jest opcjonalna sekcja bloków PL / SQL.

  • Jest to sekcja, w której jest obsługiwany wyjątek zgłoszony w bloku wykonania.
  • Ta sekcja jest ostatnią częścią bloku PL / SQL.
  • Sterowanie z tej sekcji nigdy nie może powrócić do bloku wykonywania.
  • Ta sekcja zaczyna się od słowa kluczowego „WYJĄTEK”.
  • Po tej sekcji należy zawsze umieścić słowo kluczowe „END”.

Słowo kluczowe „END” oznacza koniec bloku PL / SQL.

Składnia bloku PL / SQL

Poniżej znajduje się składnia struktury bloków PL / SQL.

DECLARE --optionalBEGIN --mandatoryEXCEPTION --optionalEND; --mandatory/

Uwaga: po bloku należy zawsze umieścić znak „/”, który wysyła kompilatorowi informację o końcu bloku.

Rodzaje bloków PL / SQL

Bloki PL / SQL występują głównie w dwóch typach.

  1. Anonimowe bloki
  2. Nazwane bloki

Anonimowe bloki:

Bloki anonimowe to bloki PL / SQL, które nie mają przypisanych żadnych nazw. Muszą zostać utworzone i używane w tej samej sesji, ponieważ nie będą przechowywane na serwerze jako obiekty bazy danych.

Ponieważ nie muszą przechowywać w bazie danych, nie wymagają czynności kompilacji. Są zapisywane i wykonywane bezpośrednio, a kompilacja i wykonywanie odbywa się w jednym procesie.

Poniżej znajduje się kilka innych cech bloków Anonimowych.

  • Te bloki nie mają określonej nazwy odniesienia.
  • Te bloki zaczynają się od słowa kluczowego „DECLARE” lub „BEGIN”.
  • Ponieważ bloki te nie mają żadnych nazw referencyjnych, nie można ich przechowywać do późniejszego użytku. Powinny być tworzone i wykonywane w tej samej sesji.
  • Mogą wywoływać inne nazwane bloki, ale wywołanie anonimowego bloku nie jest możliwe, ponieważ nie ma on żadnego odniesienia.
  • Może mieć zagnieżdżony blok, który może być nazwany lub anonimowy. Można go również zagnieżdżać w dowolnych blokach.
  • Te bloki mogą mieć wszystkie trzy sekcje bloku, w których sekcja wykonawcza jest obowiązkowa, pozostałe dwie sekcje są opcjonalne.

Nazwane bloki:

Nazwane bloki mają określoną i niepowtarzalną nazwę. Są przechowywane jako obiekty bazy danych na serwerze. Ponieważ są one dostępne jako obiekty bazy danych, można się do nich odwoływać lub ich używać, dopóki znajdują się na serwerze. Proces kompilacji nazwanych bloków odbywa się osobno podczas tworzenia ich jako obiektów bazy danych.

Poniżej znajduje się kilka innych cech nazwanych bloków.

  • Te bloki można wywołać z innych bloków.
  • Struktura bloku jest taka sama, jak blok anonimowy, z tą różnicą, że nigdy nie rozpocznie się od słowa kluczowego „DECLARE”. Zamiast tego rozpocznie się od słowa kluczowego „CREATE”, które instruuje kompilator, aby utworzył go jako obiekt bazy danych.
  • Te bloki mogą być zagnieżdżane w innych blokach. Może również zawierać zagnieżdżone bloki.
  • Nazwane bloki są zasadniczo dwojakiego rodzaju:
  1. Procedura
  2. Funkcjonować
Dowiemy się więcej o tych nazwanych blokach w tematach „Procedura” i „Funkcja” w późniejszym samouczku.

Podsumowanie

Po tym samouczku powinieneś być świadomy bloków PL / SQL i ich typów, różnych sekcji bloków i ich zastosowania. Szczegółowy opis nazwanych bloków PL / SQL zostanie omówiony w późniejszym samouczku.