Что такое процедура в 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. Приложения могут иметь входные данные от хранимых процедур, в то время как пользовательские функции могут возвращать переменные таблицы, и они не имеют права изменять настройки среды или среды операционной системы.
База данных компании
Компания | категория | Вещь |
Тарле | съестное | печенье |
Тарле | съестное | чипсы |
Лакме | косметика | губная помада |
грудинка | продуктовый | Льняное семя |
грудинка | съестное | печенье |
грудинка | продуктовый | масло |
оле | косметика | Лак для ногтей |
оле | косметика | щетка для волос |
Пример хранимой процедуры
Следующий оператор SQL создает хранимую процедуру, которая выбирает компанию
СОЗДАНИЕ ПРОЦЕДУРЫ SelectAllExample
В КАЧЕСТВЕ
ВЫБРАТЬ * ОТ КОМПАНИИ GO;
Выполните хранимую процедуру выше следующим образом:
Выполнив вышеописанную процедуру, мы можем использовать следующую команду:
EXEC SelectAllExample;
Пример хранимой процедуры с одним параметром
Следующий оператор SQL создает хранимую процедуру с одним передаваемым параметром, который выбирает компанию с элементом в качестве параметра
ПРОЦЕДУРА СОЗДАНИЯ SelectAllExample @item nvarchar (30)
В КАЧЕСТВЕ
ВЫБЕРИТЕ * ОТ КОМПАНИИ ГДЕ item = @item GO;
Выполните хранимую процедуру выше следующим образом:
Чтобы выполнить вышеописанную процедуру с одним параметром, мы можем использовать следующую команду: EXEC SelectAllExample item = «cookies»;
Пример хранимой процедуры с несколькими параметрами
Следующий оператор SQL создает хранимую процедуру с несколькими параметрами, которая выбирает компанию с элементом и категорией в качестве параметра
ПРОЦЕДУРА СОЗДАНИЯ SelectAllExample @item nvarchar (30), категория @ nvarchar (10)
КАК ВЫБРАТЬ * ИЗ КОМПАНИИ, ГДЕ item = @ item AND category = @ category GO;
Выполните хранимую процедуру выше следующим образом:
Чтобы выполнить хранимую выше процедуру с несколькими параметрами, мы можем использовать следующую команду, нам нужно передать несколько параметров через запятую: EXEC SelectAllExample item = ”cookies”, category = ”edibles”;
Преимущества процедуры в SQL
- Улучшение применения может быть достигнуто с помощью процедур. Если процедура вызывается несколько раз в одном приложении, то используется скомпилированная версия процедуры.
- Трафик между базой данных и приложением может быть уменьшен, поскольку большие операторы уже подаются в базу данных, и нам не нужно отправлять его снова и снова.
- С помощью процедур можно повторно использовать код, аналогично функциям и методам работы в Java и других языках программирования.
Недостатки процедуры в SQL
- Хранимые процедуры занимают много памяти. Обязанностью администратора базы данных является определение верхней границы того, сколько хранимых процедур возможно для конкретного приложения.
- Хранимые процедуры не могут быть отлажены с использованием MySQL.
Вывод: что такое процедура в SQL
- Простые невыбранные операторы, включая операторы DML, такие как Insert и Delete, а также операторы DDL, такие как Drop и Create, могут быть включены в хранимые программы.
- Потребление памяти больше, но скорость поиска может быть уменьшена, и повторное использование кода выгодно.
- Хранимые процедуры могут быть реализованы с переменными или без них и могут быть выполнены путем передачи параметров при необходимости.
Рекомендуемые статьи
Это было руководство к тому, что такое процедура в SQL. Здесь мы обсудили структуру, примеры, преимущества и недостатки процедуры в SQL. Вы также можете взглянуть на следующие статьи, чтобы узнать больше -
- Что такое SQL Server?
- Что такое база данных MySQL
- MySQL OpenSource
- Что такое SQL