Oracle
 sql >> база данни >  >> RDS >> Oracle

Oracle PLSQL блокова структура и типове

Тук ще обсъдим блоковата структура и типове на Oracle PLSQL

Какво е PL/SQL


PL/SQL е собствено разширение на Oracle към SQL, което дава възможност за процедурни езикови възможности. Той предоставя всички характеристики на съвременното софтуерно инженерство, като капсулиране на данни, обработка на изключения, скриване на информация и ориентация на обект

Защо да използвате PLSQL

1) Интеграция с инструменти за разработка като формуляри на Oracle, отчети

2) Множество оператори могат да бъдат групирани в един блок plsql   и да се изпратят до сървъра на Oracle, което води до по-малко мрежов трафик

3) Разработване на модулна програма:Разбийте сложната логика/проблем на набор от управляеми, добре дефинирани, логически модули и ги реализирайте с помощта на блокове

4) Преносимост:Тъй като е роден за сървъра на Oracle, може лесно да се премести

5) Предоставя структури за контрол на процедурния език като условие if, цикъл

6) Той има способността да обработва грешки и да повдига изключения въз основа на тях

PLSQL блокова структура

Блокът plsql се състои от три раздела за деклариране, изпълним файл и изключение.

DECLARE (По избор) – този раздел съдържа променливи, константи, курсори и потребителски дефинирани изключения.
BEGIN(Задължително)

ИЗПЪЛНИТЕЛНО – този раздел съдържа всички SQL изрази.

ИЗКЛЮЧЕНИЕ (по избор)- този раздел съдържа манипулаторите на грешки.

КРАЙ(задължително);

Така че секцията Деклариране и изключение са по избор.

Примерна блокова структура

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;
 /

Важни бележки

1) Всички променливи и константи са дефинирани в раздела за деклариране

2) Поставете  точка и запетая; в края на sql оператор или plsql контролен оператор

3) В PL/SQL всички грешки се обработват в блока Exception.

4) Начало и край са задължителни изрази, указващи началото и края на PL/SQL блока.

5) Променливите и константите трябва да бъдат декларирани първо, преди да могат да бъдат използвани.

6) Стойностите могат да бъдат присвоени на променливи директно с помощта на оператора за присвояване “:=”, чрез оператор SELECT ... INTO или когато се използва като параметър OUT или IN OUT от процедура.

7) Ключова дума за раздел Деклариране, Начало , изключението не се следва от точка и запетая

8) End и всички други plsql изрази  изискват  точка и запетая, за да прекрати израза

Типове PLSQL блокове

Анонимен :Анонимните блокове са неименувани блокове. Те се декларират в точката в приложението, където трябва да бъдат изпълнени

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;
 /

Функция :Това са имена PLSQL блок, който може да приеме параметър и да изчисли някаква функция и да я върне. Може да се съхранява в сървър или приложение на 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;
 /

Процедура :Това са имена PLSQL блок, който може да приеме параметър и да обработва някаква информация и може или може да връща стойности. Може да се съхранява в сървър или приложение на 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;
 /

Разлика  между  функция и процедура

Функция Процедура
Функцията трябва да върне стойност Не е необходима процедура
Синтаксис  Синтаксис
Име на ФУНКЦИЯ (списък с аргументи …..) Типът данни за връщане е Име на ПРОЦЕДУРА (списък с параметри…..)
декларации на локални променливи е
Започнете декларации на локални променливи
изпълними оператори ЗАПОЧНЕТЕ
Изключение Изпълними оператори.
изпълнителни манипулатори Изключение.
Край; обработващи изключения
  край;
   
Функцията може да се използва в SQL с известно ограничение Процедурата не може да бъде извикана директно от SQL.

блоков синтаксис и насоки на Oracle PLSQL

1) Литералите за знаци и дата трябва да бъдат затворени в единични кавички

2) Поставете няколко реда коментари между /* и */

3)  Повечето от sql функциите могат да се използват в  PLSQL . Имаме функция char,date,number, налична в PLSQL, точно като SQL

4) група по функция не са налични в PLSQL. Може да се използва само в оператора sql в PLSQL

5) Трябва да използваме правилен отстъп, за да направим кода четим

6) Препоръчително е да пишете DML изявление в главни букви, PLSQL ключови думи, типове данни в главни букви и поставяне на идентификатори и параметри в малки букви за по-добра четливост и поддръжка

Сродни връзки

Документация на Oracle PLSQL
Най-често задаваните 25 въпроса за интервю за Oracle PlSQL
Oracle sql и plsql
как да пиша 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. Урок за Oracle sql:Основно изявление на Sql

  2. Услуги за бази данни на AWS и Oracle Cloud Platform

  3. DBCA Създаване на база данни е лошо REMOTE_LISTENER

  4. NVL2 функция в Oracle

  5. Създайте таблица DDL с Изпълнете незабавно в базата данни на Oracle, част 2