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

Как да създадете PL/SQL съхранени процедури с параметри в базата данни на Oracle

В предишния урок обсъдихме как да създадем съхранена процедура без параметри. Но понякога може да се случи, че ще трябва да създадете съхранена процедура, която приема параметри. В крайна сметка тези подпрограми са там, за да ви помогнат да получите решението на проблема си по възможно най-лесния начин. Така днес в този блог ще научим как да създаваме съхранени процедури с параметри в Oracle Database

За тези, които са нови в PL/SQL програмирането и се чудят какво е съхранена процедура? Не се притеснявайте, направих отделен блог за вас, обясняващ основната теория на съхранената процедура. Можете да проверите този блог тук.

Така че нека видим демонстрацията как да създадете PL/SQL съхранена процедура с параметри!

Стъпка 1:Създайте заглавката на съхранената процедура

В заглавката на процедурата дефинираме нейния подпис.

CREATE OR REPLACE PROCEDURE emp_sal
(dep_id NUMBER, sal_raise NUMBER) 
IS

Заглавката е доста подобна на тази, която видяхме в последния урок, с изключение на това, че този път нашата процедура приема параметри, които са dep_id и sal_raise от NUMBER тип данни.

Стъпка 2:Създайте раздела за изпълнение на съхранената процедура

В секцията за изпълнение ние записваме всички изпълними оператори, които определят работата на съхранената процедура.

BEGIN
  UPDATE employees SET salary = salary * sal_raise WHERE department_id = dep_id;
END;
/

За по-добро разбиране се опитах да направя този код възможно най-прост. В секцията за изпълнение имаме само един DML израз, който е UPDATE. Използвайки това, актуализираме колоната за заплати в таблицата на служителите.

Можете да напишете бизнес логиката по този начин, след което да ги обвиете в процедура и да ги извикате в приложението си, когато е необходимо. Това ще ви даде повече контрол върху приложението си. Това също така ще ви спести от писане на един и същ код отново и отново.

Тази процедура ще приеме два параметъра, които са идентификаторът на отдел и числовата стойност за увеличение на заплатата. Първият параметър, който е dep_id, се използва за определяне на идентификатора на отдела. Вторият параметър, който е sal _ raise, ще стане коефициент на умножение в увеличението на заплатата.

За по-задълбочено разбиране на същото, моля, гледайте видеоурока в моя канал в YouTube. Там съм обяснил подробно всеки отделен ред и ключова дума от горната съхранена процедура.

Нека комбинираме всички горепосочени парчета код в една единица с име PL/SQL.

Съхранена процедура за повишаване на заплатата в целия отдел

CREATE OR REPLACE PROCEDURE emp_sal( dep_id NUMBER, sal_raise NUMBER) 
IS
BEGIN
  UPDATE emp SET salary = salary * sal_raise WHERE department_id = dep_id;
END;
/

След като създадете успешно своята съхранена процедура, трябва да я извикате във вашата програма или код. В последния урок ви показах различни начини за извикване на процедура в базата данни на Oracle. Можете да се обърнете към този урок за същото.

Това е урокът как да създадете PL/SQL съхранена процедура с параметри в Oracle Database. Моля, споделете го в социалните си медии и помогнете на другите в ученето.

Това е за днес. Приятен ден!


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Писане в ExcelSheet с помощта на пакет UTL_FILE в Oracle

  2. WSJDBCConnection не обвива обекти от тип Oracle jdbc Connection

  3. Любопитен проблем с Oracle UNION и ORDER BY

  4. Как да покажа всички привилегии от потребител в oracle?

  5. Рекурсия на заявка към база данни за получаване на йерархичен резултат с помощта на Hibernate - Java