2012-05-29 4 views
1

Не могли бы вы предложить, как выполнить с Sql Server хранимую процедуру, которая получает входной параметр? Я пробовал это, но это не удалось:Выполнение хранимой процедуры SQL Server с параметром ввода

EXEC GetFilmsInCategory('SF'); 

Хранимая процедура правильно определена, между прочим. Я выполнил его из визуального интерфейса и он работал, с этим кодом, сгенерированным автоматически:

DECLARE @return_value int 

EXEC @return_value = [dbo].[GetFilmsInCategory] @CatNume = N'SF' 

SELECT 'Return Value' = @return_value 

Я нахожу это автоматически сгенерированный код слишком ... длинный, как я что-то подобное тому, что я изначально пытался ожидал:

EXEC GetFilmsInCategory('SF'); 

Вы можете исправить это или предложить альтернативу? Спасибо!

Анна

+1

'GO' не является фактической команда SQL. На самом деле это просто разделитель партий для использования в SSMS. Когда он используется, он должен находиться на отдельной линии сам по себе. –

+0

Действительно, Джон, спасибо за головы. Я не обращал внимания на это при вводе вопроса. –

+1

Как я могу это сделать, Джон? Отметив ответы? Я просто пометил тебя. –

ответ

6

TRY:

EXEC GetFilmsInCategory 'SF' 
+1

Чудесный, он работал без пасеток. Спасибо. –

+1

Проверка комментария как отличного эквивалентна проверке его как ответа? Спасибо за совет и совет, Jmyster. –

+0

Там вы идете. Добро пожаловать в SO =). – Jmyster

3

Вы также можете адресовать параметры по имени:

EXEC GetFilmsInCategory @CatNume = 'SF' 
Смежные вопросы