2016-02-26 4 views
-6

Эта процедура не работаетЭта процедура не работает

ALTER PROCEDURE GETDETAIL 
(@AGE INT, 
@NAME VARCHAR(50) OUT, 
@CITY VARCHAR(200) OUT, 
@MOBILE NUMERIC(20) OUT) 
AS BEGIN 
SELECT @NAME=NAME, 
     @CITY=CITY, 
     @MOBILE=MOBILE 
FROM ONE 
WHERE @AGE=AGE END GO 

ОШИБКА:

Procedure or function 'GETDETAIL' expects parameter '@NAME', which was not supplied.

+0

пожалуйста объяснить больше, то мы можем помочь вам – Mark

+1

показать свой 'exec' код –

+0

Что вы ожидаете произойдет, когда вы получите два ряды одного возраста? – shawnt00

ответ

1

Проблема не в порядке, то есть в призвании. При вызове хранимой процедуры, вы должны объявить и передать в требуемом параметре

declare @NAME VARCHAR(50), 
     @CITY VARCHAR(200), 
     @MOBILE NUMERIC(20) 

execute GETDETAIL @AGE = 21, 
        @NAME = @NAME OUTPUT, 
        @CITY = @CITY OUTPUT, 
        @MOBILE = @MOBILE OUTPUT 

SELECT @NAME, @CITY, @MOBILE 
+0

Спасибо, что он работает ..... –

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