Пълно ръководство за процедура и функция в PL SQL – TechCult
Miscellanea / / April 07, 2023
Езиците за програмиране са система за писане на компютърни програми. Въпреки че много езици за програмиране са базирани на текст, други могат да бъдат и графични. Тези езици помагат на програмистите да комуникират с компютъра. Структурираният език за заявки (SQL) е един такъв език за програмиране, който помага при съхраняването, манипулирането и извличането на данни, съхранявани в релационна база данни. В днешното ръководство ще споделим подробности за изпълнението на блоковете с имена (процедури и функции), които са подпрограми за PL SQL. Така че, ако сте търсили подробно ръководство за процедурата и функцията в PL SQL, сте попаднали на правилната страница. В този документ, наред с разглеждането на темата за PL SQL съхранена процедура, ще научите и за примера на PL SQL процедура. Да не говорим за процедурата за извикване на PL SQL, процедурата за излизане от PL SQL и примера за функция на PL SQL, които са еднакво важни да научите, ако сте начинаещ програмист. И така, нека да започнем с нашето подробно ръководство за PL SQL.
![Пълно ръководство за процедура и функция в PL SQL](/f/c5fc88cbf60d67a0588a094545f4261c.png)
Съдържание
Пълно ръководство за процедура и функция в PL SQL
Тук сме показали процедури и функции на PL SQL с примери в детайли.
Какво е PL SQL?
- PL SQL е кратка форма на Разширения на процедурен език към SQL.
- PL SQL е блоково структуриран език за програмисти, който им помага съчетават силата на SQL с процедурни изявления.
- то е на Oracle Corporation процесуално разширение.
- Този процедурен език е наличен в Оракул база данни, По десет база данни в паметта и IBM Db2.
- По време на изпълнение както PL/SQL, така и SQL осигуряват оптимална ефективност, като работят в рамките на същия сървърен процес.
- PL SQL осигурява ефективна и необезпокоявана обработка на SQL изрази чрез подобряване на преносимост, сигурност, и здравина на базата данни.
- PL SQL просто означава инструктиране на компилатора какво да правя през SQL и около как да се направи то чрез своя процедурен начин.
- PL SQL дава повече контрол на програмистите с използване на примки, условия, и обектно-ориентирани концепции.
Какво е процедура и функция в PL SQL?
- PL SQL има две подпрограми, известни като процедури и функции.
- Обикновено се използва процедура за изпълнявам anдействие и функция към изчислете стойност.
- Подпрограмите в PL SQL имат a декларативна част, ан изпълнима част, и ан незадължителна част за обработка на изключения.
- Тези подпрограми могат да бъдат създадени и записани в базата данни като обекти на база данни.
- Подпрограми за процедури и функции в PL SQL връщане a единична стойност който се използва главно за изчисли и върне стойност.
- Тези подпрограми са просто колекция от PL/SQL и SQL оператори който може да изпълни a конкретна задача.
Как да създадете съхранена процедура и функция в PL SQL?
Когато се напише блок от код за PL SQL съхранена процедура или функция, те се компилират от машината на Oracle. Веднъж компилиран, той се съхранява като обект на база данни. Съхранената процедура или функционален блок от код се състои от три части:
- Декларативна част: В тази част се декларират променливи, константи, курсор или изключения, които трябва да се използват от процедура или функция.
- Изпълнима част: В тази част е написана дефиницията на процедурата или функцията, която се създава. Тази част също се състои от PL/SQL или SQL изрази, присвояващи стойности, манипулиращи данни и контролиращи изпълнението.
- Част за обработка на изключения: Тази последна част не е задължителна и в нея са записани очаквани изключения, които могат да възникнат по време на изпълнението на код, написан в изпълнимата част.
Предимства на съхранената процедура и функция в PL SQL
Преди да разкрием пример за PL SQL процедура, първо трябва да се запознаете с предимствата на подпрограмите за процедури и функции.
- Подобрете производителността на базата данни: Енджинът Oracle помага при автоматичното компилиране. Също така, когато се изпълнява процедура или функция на PL SQL извикване, двигателят на Oracle зарежда компилирания код в SGA, системна глобална зона, което помага за по-бързото изпълнение.
- Повторна употреба и без излишък: Броят редове код не може да бъде написан многократно, защото един и същ блок код за процедура или функция може да бъде извикан произволен брой пъти за множество данни.
- Сигурност: Сигурността на базата данни се поддържа и с използването на съхранени процедури или функции, тъй като помага да се контролира използването и техния достъп чрез предоставяне на разрешение на потребителите. Въпреки това, разрешение за редактиране или манипулиране на базата данни не се предоставя на потребителите.
- Интегритет: Друго предимство на използването на PL SQL съхранена процедура или функция е, че тя гарантира целостта, тъй като те се съхраняват като обекти на база данни от двигателя на Oracle.
- Запазване на паметта: Едно от многото предимства на съхранените процедури или функции е, че те споделят памет, което помага за спестяване на памет като a едно копие на процедура или функция, което може да бъде заредено от няколко потребители, които имат разрешение да правят един и същ.
Прочетете също:Как да коригирате javascript: void (0) грешка
Синтаксис за създаване на съхранена процедура
Можете да разгледате синтаксиса по-долу, който се използва за създаване на съхранена процедура в Оракул:
СЪЗДАВАНЕ ИЛИ ЗАМЕНЯНЕ НА ПРОЦЕДУРА (IN/OUT/IN OUT , IN/OUT/IN OUT декларация на променлива/константа;НАЧАЛО-- тяло на PL/SQL подпрограма;ИЗКЛЮЧЕНИЕ-- Блок за обработка на изключения ;КРАЙ,...) Е КАТО ;
![синтаксис за създаване на съхранена процедура в Oracle](/f/0f784c735d8f1c114e1d8a90021e36c5.png)
В горния код:
- Име_на_процедура представлява името на процедурата.
- Име_на_променлива представлява името на променливата, използвана в запомнената процедура.
- Създавайте или Процедура за замяна представлява ключова дума, използвана за указване на името на процедурата, която ще бъде създадена.
- Започнете, Изключение, и Край представлява ключови думи, използвани за указване на различни секции от процедурата, която е създадена.
- IN/OUT/IN OUT представлява параметрични режими, при които, IN отнася се до САМО ЗА ЧЕТЕНЕ режим, който се използва за променлива, чрез която ще приеме стойността от потребителя. Това е режимът на параметрите по подразбиране.
- ВЪН отнася се до САМО ПИШЕТЕ режим, който се използва за променлива, която връща стойността на потребителя.
- IN OUT отнася се до ПРОЧЕТИ и ПИШЕТЕ режим, който се използва за променлива, която или ще приеме стойност, или ще върне стойност на потребителя.
- представлява край на дефиницията на процедурата. Можете също просто да използвате END на негово място.
Пример за PL SQL процедура
За кода на процедурата по-долу, ето прост пример, който ясно ще демонстрира използването на съхранената процедура за събиране на две числа:
задайте сървърния изход на;ПРОЦЕДУРА ЗА СЪЗДАВАНЕ ИЛИ ЗАМЕНЯНЕ Сума ( където a IN число, b IN число) Е c число;НАЧАЛОc := a+b;dbms_output.put_line ('Сума от два номера = '|| c);КРАЙ Сума;
В случай на извикване на процедурата, ще бъде изпълнен следният код:
задайте сървърния изход на;ДЕКЛАРИРАЙТЕx число;y число;НАЧАЛОx := &x;y := &y;Сума (x, y);КРАЙ;Където:Въведете стойност за x: 10Въведете стойност за y: 20Сума от две числа: 30
PL SQL процедурата е създадена успешно.
Синтаксис за създаване на функция в PL SQL
Сега, след като сте наясно как да създадете синтаксис за съхранена процедура и неговия пример, време е да хвърлим малко светлина върху създаването на функции в PL/SQL:
СЪЗДАВАНЕ ИЛИ ЗАМЕНЯНЕ НА ФУНКЦИЯ (IN , IN ВРЪЩАНЕ,...) Е КАТО декларация на променлива/константа;НАЧАЛО-- тяло на PL/SQL подпрограма;ИЗКЛЮЧЕНИЕ-- Блок за обработка на изключения ;КРАЙ;
![синтаксис за създаване на функции](/f/66359d3c11ce394485ee9166ea6919b8.png)
В горния код:
- Име_на_функция представлява името на функцията.
- Име_на_променлива представлява името на променливата за променливата, използвана във функцията.
- Създавайте или Замяна на функция представлява ключова дума, използвана за името на функцията, която ще бъде създадена.
- IN представлява САМО ЗА ЧЕТЕНЕ режим, който се използва за променлива, чрез която ще приеме стойността от потребителя. Това е параметърът по подразбиране.
- Връщане представлява ключова дума, която е последвана от тип данни, указващ тип данни на стойност, която функцията ще върне.
Прочетете също:Неуспешна команда за коригиране с код на грешка 1 Информация за Python Egg
Пример за PL SQL функция
По-долу е даден пример за функцията PL SQL, която демонстрира използването на функцията за събиране на две числа:
задайте сървърния изход на;CREATE OR REPLACE FUNCTION Sum (a IN число, b IN число) RETURN Number ISc число;НАЧАЛОc := a+b;ВРЪЩАНЕ c;КРАЙ;
![функция за добавяне на синтаксис на две числа](/f/2262b9a0d637e39e8edc009649ca6a97.png)
В случай на извикване на функцията sum, ще бъде изпълнен следният код:
задайте сървърния изход на;ДЕКЛАРИРАЙТЕno1 номер;no2 номер;номер на резултата;НАЧАЛОno1 := &no1;no2 := &no2;резултат := Сума (no1,no2);dbms_output.put_line(‘Сума от два номера=’||резултат);КРАЙ;Където:Въведете стойност за номер 1: 5Въведете стойност за номер 2: 5Сума от две числа: 10
PL SQL процедурата е създадена успешно.
![синтаксис за извикване на функция сума](/f/e823b3f93e659d4d7cea300b20fbd68e.png)
Прочетете следващия раздел, за да научите за процедурата за излизане от PL SQL.
Какво представлява процедурата за излизане от PL SQL?
Exit помага, когато операторът излезе от текущата итерация на цикъла, след като условието в неговата клауза WHEN е изпълнено, и прехвърля контрола към края на цикъла, който се изпълнява в момента. Операторите за изход не могат да се използват извън циклите и са предназначени и за излизане от цикъл безусловно използване на изрази Exit и Continue или условно използване на Exit When и Continue When изявления.
Разлика между съхранена и функционална процедура
Сега, след като сте запознати с процедурата и функцията в PL SQL, най-накрая е време да знаете и основната разлика между двете:
- Съхранена процедура може или не може да върне стойност към извикващата част на програмата, докато, функция връща стойност към извикващата част на програмата.
- Съхранена процедура връща стойност, използвайки OUT параметър, докато, функция връща стойността чрез RETURN.
- Съхранена процедура използва IN, OUT, IN OUT параметър, докато, функция използва само IN параметър.
- Съхранена процедура не указва типа данни стойността, ако ще се върне след извикване, направено към него, докато, функция указва типа данни на стойността, която ще се върне след извикване, направено към нея.
- Съхранена процедура не може да бъде извикан от функционалния блок на кода, докато, функция може да се извика от процедурния блок код.
Препоръчва се:
- DDR4 срещу DDR5 RAM: Кое е по-добро за игри?
- Какви са видовете Breadboard?
- Как да анализирате текст
- 4 начина за разделяне на низ чрез разделител в SQL
Надяваме се, че нашият док процедура и функция в PL SQL беше полезен и успешен в отговора на всички ваши съмнения относно PL SQL и техните подпрограми, процедура и функция, процедура за излизане от PL SQL и др. Ако сме ви помогнали по някакъв начин или има още запитвания от ваша страна, моля, оставете вашите коментари по-долу, за да ни уведомите.
Илон е технически писател в TechCult. Той пише ръководства с инструкции от около 6 години и е покрил много теми. Той обича да отразява теми, свързани с Windows, Android и най-новите трикове и съвети.