Какво е процедура в SQL
Разработчиците могат да използват силата на SQL с процедурни изявления, вградени в Pl / SQL, тъй като Pl / SQL е блок-структуриран език. Съхранена процедура не е нищо друго освен колекция от декларативни SQL изрази. Можем да мислим за процедура като функция или метод. Тригери, други процедури или приложения на Java, PHP и др. Могат да бъдат използвани за извикване на процедура. Извлеченията за блока се предават на Oracle двигателя наведнъж, за да можем да имаме висока скорост на обработка и да намалим трафика.
Съхранена процедура е точно като блок от код, който можем да запазваме и използваме отново и отново. Ако имаме SQL заявка, която използваме няколко пъти, така че вместо да я пренапишем отново, можем да я запишем като съхранена процедура и тогава просто трябва да я извикаме и да я изпълним. Можем също така да предадем параметрите на съхранена процедура, така че да можем да имаме изход въз основа на стойността на параметъра или на приетите стойности.
Какво е SQL?
Структурираният език за заявки (SQL) понякога се произнася като индивидуален символ „S-QL“ или „see-Quel“. Използва се за търсене, манипулиране или актуализиране на данни в релационната база данни. Използва се за вмъкване или актуализиране или изтриване на записи в база данни. Една от основните функционалности на SQL е поддържането на база данни.
Синтаксисът на SQL заявката за извличане на всички записи е както следва:
изберете * от името на таблицата
Съхранени процедури в SQL
Какво е съхранена процедура? Съхранена процедура е съвкупност от изрази на структуриран заявен език (SQL) с име, присвоено на нея. Тези съхранени процедури се съхраняват в система за управление на релационни бази данни (RDBMS). Така че е възможно многократно извикване на процедурите, намаляващи многобройните изпълнения и което води до намаляване на времето за изпълнение. Данните могат да бъдат модифицирани с помощта на процедури и основното предимство е, че не са обвързани с конкретно приложение.
Съхранените процедури могат да приемат параметри като вход и могат да върнат множество стойности като изходен параметър. В съхранените процедури на SQL Server извършват операции в базата данни и могат да върнат стойност на състоянието на приложение или процедура за пакетно извикване. Дефинираните от потребителя процедури се създават с помощта на определената от потребителя база данни, с изключение, когато имаме база данни само за четене. За целта трябва да го разработим в Transact SQL (T-SQL). Tempdb е мястото, където се съхраняват всички временни процедури. Има два вида съхранявани процедури, които имаме
- Местни процедури
- Глобални процедури
Локалните процедури са тези, които са видими само за потребителя, който го използва във връзката, докато глобалните процедури са видими за всеки от потребителите в същата връзка.
Структура на създаване на процедурата
Тук собственикът означава името на базата данни и да предаде параметъра, който трябва да добавим символа '@'.
CREATE PROCEDURE .
AS
Execute a Stored Procedure
Exec is the command for the execution of the procedure.
EXEC Procedure_name
Сравнение между съхранена процедура и функции
Съхранените процедури и функции могат да се използват за постигане на същата функционалност. Можем да персонализираме както процедурите, така и функциите. Разликата между тях е, че функциите са създадени да изпращат изхода си към Transact SQL, а съхранените процедури са проектирани да връщат изход към заявка, както и да могат да върнат изхода и към T-SQL. Приложенията могат да имат вход от запаметените процедури, докато дефинираните от потребителя функции могат да връщат променливи на таблицата и те не са привилегировани да променят настройките на средата, нито средата на операционната система.
Компания за база данни
Търговско дружество | категория | Вещ |
Tarle | храна | бисквитки |
Tarle | храна | чипс |
Lakme | козметика | червило |
гърди | хранителни стоки | Ленено семе |
гърди | храна | бисквити |
гърди | хранителни стоки | масло |
оле | козметика | Лак за нокти |
оле | козметика | четка за коса |
Пример за съхранена процедура
Следващият SQL оператор създава съхранена процедура, която избира компанията
СЪЗДАВАНЕ НА ПРОЦЕДУРА SelectAllExample
КАТО
ИЗБЕРЕТЕ * ОТ фирма GO;
Изпълнете съхранената процедура по-горе, както следва:
Изпълнявайки по-горе съхранената процедура, можем да използваме следната команда:
EXEC SelectAllExample;
Пример за съхранена процедура с един параметър
Следващият SQL оператор създава запаметена процедура с един параметър, който трябва да бъде предаден, който избира компания с елемент като параметър
СЪЗДАВАНЕ НА ПРОЦЕДУРА SelectAllExample @item nvarchar (30)
КАТО
ИЗБЕРЕТЕ * ОТ фирма, КЪДЕТО артикул = @item GO;
Изпълнете съхранената процедура по-горе, както следва:
За изпълнение на горепосочената съхранена процедура с един параметър можем да използваме следната команда: EXEC SelectAllExample item = “бисквитки”;
Пример за съхранена процедура с множество параметри
Следващият SQL оператор създава съхранена процедура с множество параметри, които избират фирма с елемент и категория като параметър
СЪЗДАВАНЕ НА ПРОЦЕДУРА SelectAllExample @item nvarchar (30), @ категория nvarchar (10)
КАТО ИЗБЕРЕТЕ * ОТ фирма, КЪДЕ артикул = @ артикул И категория = @ категория GO;
Изпълнете съхранената процедура по-горе, както следва:
За да изпълним по-горе съхранената процедура с множество параметри, можем да използваме следната команда, която трябва да предадем множеството параметри със запетая разделени: EXEC SelectAllExample item = “бисквитки”, категория = “ядливи”;
Предимства на процедурата в SQL
- Подобряването на приложението може да бъде постигнато чрез процедури. Ако една процедура се извиква многократно в едно приложение, тогава компилираната версия на процедурата се използва.
- Трафикът между базата данни и приложението може да бъде намален, тъй като големите изявления вече се подават в базата данни и не е нужно да го изпращаме отново и отново.
- Използването на процедури може да се използва повторно използване на код, подобно на функциите и методите, работещи в Java и други езици за програмиране.
Недостатъци на процедурата в SQL
- Съхранените процедури консумират много памет. Задължение на администратора на база данни е да определи горната граница на това колко съхранени процедури са изпълними за конкретно приложение.
- Съхранените процедури не могат да бъдат отстранени чрез използване на MySQL.
Заключение: Какво е процедура в SQL
- Прости неизбираеми извлечения, включително DML изрази като Вмъкване и изтриване, също DDL изявления като Drop and Create могат да бъдат включени в съхранените програми.
- Консумацията на памет е повече, но скоростта на търсене може да бъде намалена и използването на код е от полза.
- Съхранените процедури могат да бъдат реализирани с или без променливи и могат да бъдат изпълнени чрез предаване на параметрите, ако е необходимо.
Препоръчителни статии
Това е ръководство за това какво е процедура в SQL. Тук сме обсъдили структурата, примерите, предимствата и недостатъците на процедурата в SQL. Може да разгледате и следните статии, за да научите повече -
- Какво е SQL Server?
- Какво е MySQL база данни
- MySQL OpenSource
- Какво е SQL