2012-01-17 3 views
-1

Я не могу найти ничего конкретного, что я пытаюсь сделать. Возможно ли передавать динамические параметры в sp?Динамические параметры, переданные в хранимую процедуру

CREATE DBO.STOREDPROC 
(
@PARAM1 nvarchar(20) 
@PARAM2 nvarchar(20) 
) 

, где @PARAM1 и @PARAM2 будут определены и выбраны из таблицы на основе пользовательского ввода.

Позвольте пояснить, чего я хочу достичь, как следует. От входа пользователя давайте говорить вариант или B, если выбран параметры, передаваемые бы @param1 и @param2, если B был выбран @param3 и @param4 будет принят.

Я не уверен, если SQL предлагает эту функцию, чтобы определить, какие параметры передаются во время выполнения на основе пользовательского ввода

+0

Какую технологию баз данных вы используете? Я предполагаю, что SQL Server. – JStead

+0

Да. Ваш пример - именно то, как вы это делаете. – RBarryYoung

+1

Я не понимаю, о чем вы спрашиваете. Не все ли параметры «динамические»? Или вы хотите, чтобы вы определяли имена и типы параметров на лету? Пример поможет. – RickNZ

ответ

1
create procedure dbo.STOREDPROC 
(
@PARAM1 nvarchar(20), 
@PARAM2 nvarchar(20) 
) 

нужны ключевые слова PROCEDURE и запятой между параметрами ...

2

Я не уверен, правильно ли я понял ваш вопрос ... вы просто просите об этом?

-- get the data 
declare @param1 nvarchar(20) 
declare @param2 nvarchar(20) 

select @param1 = SomeColumn, @param2 = SomeOtherColumn 
from SomeTable 
where SomeInput = 'user input' 

-- execute the proc 
exec dbo.STOREDPROC @param1, @param2 
+0

Привет, позвольте мне уточнить, чего я хочу достичь, как следует. – user1153057

Смежные вопросы