Hey all,
I have a stored procedure and I need to call it within another stored procedure, but I want the first one to return a value (field value).
CREATE PROCEDURE rnd_STR
(
@Length int
)
@alphaVar varchar(10) OUTPUT
AS
SET @alphaVar = 'blah'
#procedure body
END
GO
DECLARE @alphaVar varchar(10)
EXEC rnd_STR @alphaVar output
SELECT @alphaVar
ERRORS
Msg 102, Level 15, State 1, Procedure rnd_STR, Line 6
Incorrect syntax near ‘@alphaVar’.
Msg 137, Level 15, State 1, Procedure rnd_STR, Line 8
Must declare the scalar variable “@alphaVar”.
Msg 2812, Level 16, State 62, Line 4
Could not find stored procedure ‘rnd_STR’.
(1 row(s) affected)
didn’t work !!
How can I call it??
BTW, the returned @ID is a string
You say
@alphaVarisvarchar(10). In that case you need to use an output parameter as below.Returncan only be used for integer types in stored procedures.Alternatively you could use a scalar UDF rather than a stored procedure.