Что такое хранимая процедура? - PullRequest
271 голосов
/ 20 января 2009

Что такое хранимая процедура? Как они работают? Каков состав хранимой процедуры (каждая вещь должна должна быть хранимой процедурой)?

Ответы [ 16 ]

0 голосов
/ 28 ноября 2018

В хранимых процедурах операторы записываются только один раз и сокращают сетевой трафик между клиентами и серверами. Мы также можем избежать Sql Injection Attacks.

  • Incase, если вы используете стороннюю программу в своем приложении для обработки платежей, здесь база данных должна только выставить информация, в которой она нуждалась, и деятельность этой третьей стороны авторизованный, тем самым мы можем достичь конфиденциальности данных, установив разрешения с использованием хранимых процедур.
  • Обновление таблицы должно выполняться только для таблицы, на которую она нацелена но это не должно обновлять любую другую таблицу, с помощью которой мы можем достичь целостность данных с использованием обработки транзакций и обработки ошибок.
  • Если вы хотите вернуть один или несколько элементов с типом данных, тогда лучше использовать выходной параметр.
  • В хранимых процедурах мы используем выходной параметр для всего, что должен быть возвращен. Если вы хотите вернуть только один товар только с целочисленный тип данных, тогда лучше использовать возвращаемое значение. На самом деле возвращаемое значение только для информирования об успехе или неудаче сохраненного Процедура.
0 голосов
/ 07 февраля 2018

Хранимая процедура поможет вам создать код на сервере. Вы можете передать параметры и найти вывод.

create procedure_name (para1 int,para2 decimal)
as
select * from TableName
0 голосов
/ 13 сентября 2017

Хранимые процедуры в SQL Server могут принимать входные параметры и возвращать несколько значений выходных параметров; в SQL Server программные операторы хранимых процедур выполняют операции в базе данных и возвращают значение состояния вызывающей процедуре или пакету.

Преимущества использования хранимых процедур в SQL Server

Они позволяют модульное программирование. Они позволяют быстрее выполнять. Они могут уменьшить сетевой трафик. Их можно использовать в качестве защитного механизма.

Вот пример хранимой процедуры, которая принимает параметр, выполняет запрос и возвращает результат. В частности, хранимая процедура принимает BusinessEntityID в качестве параметра и использует его для сопоставления первичного ключа таблицы HumanResources.Employee для возврата запрошенного сотрудника.

> create procedure HumanResources.uspFindEmployee    `*<<<---Store procedure name`*
@businessEntityID                                     `<<<----parameter`
as
begin
SET NOCOUNT ON;
Select businessEntityId,              <<<----select statement to return one employee row
NationalIdNumber,
LoginID,
JobTitle,
HireData,
From HumanResources.Employee
where businessEntityId =@businessEntityId     <<<---parameter used as criteria
end

Я узнал об этом с essential.com ... это очень полезно.

0 голосов
/ 08 сентября 2017

для простого,

Хранимая процедура являются Хранимые программы , Программа / функция, сохраненная в базе данных.

Каждая хранимая программа содержит тело, состоящее из оператора SQL. Этот оператор может быть составным оператором, состоящим из нескольких операторов, разделенных точками с запятой (;).

CREATE PROCEDURE dorepeat(p1 INT)
BEGIN
  SET @x = 0;
  REPEAT SET @x = @x + 1; UNTIL @x > p1 END REPEAT;
END;
0 голосов
/ 18 августа 2016

В СУБД хранимая процедура - это набор операторов SQL с присвоенным именем, который хранится в базе данных в скомпилированной форме, чтобы ее могли использовать несколько программ.

Использование хранимой процедуры может быть полезным в

  1. Предоставление контролируемого доступа к данным (конечные пользователи могут только вводить или изменять данные, но не могут писать процедуры)

  2. Обеспечение целостности данных (данные будут вводиться согласованным образом) и

  3. Повышение производительности (операторы хранимой процедуры должны быть записаны только один раз)

0 голосов
/ 08 января 2014

Хранимая процедура - это именованная коллекция операторов SQL и процедурной логики, т.е. скомпилированная, проверенная и сохраненная в базе данных сервера. Хранимая процедура обычно обрабатывается как другие объекты базы данных и управляется с помощью механизма безопасности сервера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...