хранимые процедуры sql



Автор В к задал вопрос в разделе Другие языки и технологии

SQL хранимая процедура). и получил лучший ответ

Ответ от Kelavric kelavric[гуру]
В условии задачи сказано - сделать процедуру, пытающуюся удалить какого-то клиента, и возвращающую какой-то признак успеха или неуспеха. Так что, очевидно, процедура должна иметь два параметра: идентификатор клиента (@CustomerID) и результат выполнения (@Result).

Эта процедура может выглядеть примерно так:

CREATE PROCEDURE dbo.DeleteCustomer (
@CustomerID int,
@Result int OUTPUT
)
AS
BEGIN

-- проверяем, нет ли заказов
IF EXISTS(SELECT * FROM [ORDER] WHERE IdCust = @CustomerID)
BEGIN
SET @Result = 0
RETURN
END

-- удаляем клиента
DELETE FROM Customer WHERE IdCust = @CustomerID
SET @Result = 1

END

Во всяких разных языках программирования есть свои механизмы для вызова хранимых процедур базы данных, а в каком-нибудь QueryAnalyzer-е или где вы там отлаживаете запросы, эту процедуру для проверки можно вызвать так:

DECLARE @Result integer
EXEC dbo.DeleteCustomer 11, @Result OUTPUT
PRINT 'результат выполнения: ' + cast(@Result as varchar(256))

И всё-таки, наверно, в заголовке лучше указывать диалект, а то у каждой СУБД свои заморочки...

Ответ от 22 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: SQL хранимая процедура).
Хранимая процедура на Википедии
Посмотрите статью на википедии про Хранимая процедура
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*