Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Struktura i typy bloków Oracle PLSQL

Tutaj będziemy omawiać strukturę i typy bloków Oracle PLSQL

Co to jest PL/SQL


PL/SQL to zastrzeżone rozszerzenie Oracle do SQL, które zapewnia możliwości języka proceduralnego. Daje wszystkie funkcje nowoczesnej inżynierii oprogramowania, takie jak enkapsulacja danych, obsługa wyjątków, ukrywanie informacji i orientacja obiektowa

Dlaczego warto korzystać z PLSQL

1) Integracja z narzędziami programistycznymi, takimi jak formularze Oracle, raporty

2) Wiele instrukcji można zgrupować w pojedynczy blok plsql i wysłać do serwera Oracle, co spowoduje mniejszy ruch w sieci

3) Modularny rozwój programu:podziel złożoną logikę/problem na zestaw łatwych do zarządzania, dobrze zdefiniowanych modułów logicznych i zaimplementuj je za pomocą bloków

4) Przenośność:ponieważ jest natywny dla serwera Oracle, można go łatwo przenieść

5) Zapewnia struktury kontroli języka proceduralnego, takie jak warunek warunkowy, pętla

6) Ma możliwość obsługi błędów i na ich podstawie zgłaszania wyjątków

Struktura bloku PLSQL

Blok plsql jest tworzony w trzech sekcjach Deklaracja, plik wykonywalny i wyjątek.

DECLARE (opcjonalnie) – ta sekcja zawiera zmienne, stałe, kursory i wyjątki zdefiniowane przez użytkownika.
BEGIN(Obowiązkowe)

WYKONALNY – ta sekcja zawiera wszelkie instrukcje SQL.

WYJĄTEK (opcjonalnie)- ta sekcja zawiera programy obsługi błędów.

KONIEC (obowiązkowe);

Tak więc sekcja Deklaracja i wyjątek są opcjonalne.

Przykładowa struktura bloku

DECLARE 
 l_number  NUMBER;
 BEGIN
 l_number := 1;
 Dbms_output.put_line(l_number);
 Exception
 When others then
 Dbms_output.put_line(‘Exception occurred’);
 END;
 /

Ważne punkty do zanotowania

1) Wszystkie zmienne i stałe są zdefiniowane w sekcji deklaracji

2) Wstaw średnik; na końcu instrukcji sql lub instrukcji kontrolnej plsql

3) W PL/SQL wszystkie błędy są obsługiwane w bloku wyjątków.

4) Początek i Koniec to obowiązkowe instrukcje wskazujące początek i koniec bloku PL/SQL.

5) Zmienne i stałe muszą być zadeklarowane jako pierwsze, zanim będą mogły zostać użyte.

6) Wartości mogą być przypisane do zmiennych bezpośrednio za pomocą operatora przypisania „:=”, za pomocą instrukcji SELECT … INTO lub Gdy jest używany jako parametr OUT lub IN OUT z procedury.

7) Słowo kluczowe sekcji Zadeklaruj, Rozpocznij, wyjątek nie jest poprzedzone średnikiem

8) End i wszystkie inne instrukcje plsql wymagają średnika, aby zakończyć instrukcję

Typy bloków PLSQL

Anonimowy :Bloki anonimowe to bloki nienazwane. Są deklarowane w miejscu w aplikacji, w którym muszą zostać wykonane

DECLARE 
 l_number  NUMBER;
 BEGIN
 l_number := 1;
 Dbms_output.put_line(l_number);
 Exception
 When others then
 Dbms_output.put_line(‘Exception occurred’);
 END;
 /

Funkcja :Są to nazwy bloków PLSQL, które mogą przyjąć parametr i obliczyć jakąś funkcję oraz ją zwrócić. Może być przechowywany na serwerze lub aplikacji Oracle

Syntax
FUNCTION name [(parameter[, parameter, …])] RETURN datatype IS
 [local declarations]
 BEGIN
 executable statements
 [EXCEPTION exception handlers]
 END [name];
 Example
 Create or replace function FUNC return number
 As
 l_number  NUMBER;
 BEGIN
 Select count(*) into l_number  from emp;
 return(l_number)
 END;
 /

Procedura :Są to nazwy bloków PLSQL, które mogą przyjmować parametry i przetwarzać niektóre informacje oraz mogą lub mogą zwracać wartości. Może być przechowywany na serwerze lub aplikacji Oracle

Syntax
 PROCEDURE name [(parameter[, parameter, …])] IS
 [local declarations]
 BEGIN
 executable statements
 [EXCEPTION exception handlers]
 END [name];
 Example
 Create or replace procedure  remove_emp (emp_id  number)
 As
 BEGIN
 Delete from emp where employee_id=emp_id;
 END;
 /

Różnica między funkcją a procedurą

Funkcja Procedura
Funkcja musi zwracać wartość Procedura nie musi
Składnia  Składnia
nazwa FUNKCJI (lista argumentów …..) Zwracany typ danych to Nazwa PROCEDURY (lista parametrów…..)
deklaracje zmiennych lokalnych jest
Rozpocznij deklaracje zmiennych lokalnych
wykonywalne instrukcje POCZĄTEK
Wyjątek Wykonywalne instrukcje.
programy obsługi wykonywania Wyjątek.
Koniec; obsługa wyjątków
  koniec;
   
Funkcja może być używana w SQL z pewnymi ograniczeniami Procedura nie może być wywołana bezpośrednio z SQL.

Składnia i wytyczne dotyczące bloków Oracle PLSQL

1) Literały znaków i daty muszą być ujęte w pojedyncze cudzysłowy

2) Umieść komentarze w wielu wierszach między /* a */

3) Większość funkcji sql może być używana w PLSQL. Mamy funkcję char,date,number dostępną w PLSQL, podobnie jak SQL

4) grupowanie według funkcji nie są dostępne w PLSQL. Może być używany tylko w instrukcji sql w PLSQL

5) Powinniśmy używać odpowiedniego wcięcia, aby kod był czytelny

6) Zaleca się pisanie instrukcji DML wielkimi literami, słowa kluczowe PLSQL, typy danych wielkimi literami oraz umieszczanie identyfikatorów i parametrów małymi literami dla lepszej czytelności i obsługi

Powiązane linki

Dokumentacja Oracle PLSQL
Najczęściej zadawane 25 pytań dotyczących Oracle PlSQL
Oracle sql i plsql
jak pisać zapytania sql


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak wyeksportować wyniki zapytania do pliku .txt przy użyciu SQLcl (Oracle)

  2. Uzyskaj wartość na podstawie maks. innej kolumny pogrupowanej według innej kolumny

  3. Wywoływanie notacji dla podprogramów PL/SQL w bazie danych Oracle

  4. WIDTH_BUCKET() Funkcja w Oracle

  5. Najpopularniejsze zapytania dotyczące znalezienia poprawki zastosowanej w aplikacjach Oracle