all groups > sql server programming > october 2005 >
You're in the

sql server programming

group:

Stored Procedure Variables


Re: Stored Procedure Variables Dan Guzman
10/29/2005 3:42:34 PM
sql server programming: You have a typo in the proc parameter name.

@UserdID

should be

@UserID

--
Hope this helps.

Dan Guzman
SQL Server MVP

[quoted text, click to view]
I'm getting an error when trying to compile a stored procedure.

Here's the code:

CREATE PROCEDURE GetMyFriends
@UserdID INT
AS

--DECLARE @FRIENDID INT

CREATE TABLE #FRIENDS
(USERID INT,
FRIENDID INT,
INVITATIONTYPE BIT,
CREATEDDATE DATETIME)

CREATE TABLE #FRIENDS_2
(USERID INT,
FRIENDID INT,
INVITATIONTYPE BIT,
CREATEDDATE DATETIME)

DECLARE @FRIENDID INT

INSERT INTO #FRIENDS
SELECT * FROM ZUSERFRIENDS WHERE USERID = @UserID
--SELECT * FROM #FRIENDS
--SELECT * FROM #FRIENDS_2

DECLARE FRIENDS_CURSOR CURSOR
FOR
SELECT DISTINCT FRIENDID FROM #FRIENDS

OPEN FRIENDS_CURSOR

FETCH NEXT FROM FRIENDS_CURSOR
INTO @FRIENDID
WHILE @@FETCH_STATUS = 0
BEGIN
INSERT INTO #FRIENDS_2
SELECT TOP 1* FROM ZUSERFRIENDS WHERE USERID = @FRIENDID
FETCH NEXT FROM FRIENDS_CURSOR
INTO @FRIENDID
END


CLOSE FRIENDS_CURSOR
DEALLOCATE FRIENDS_CURSOR

SELECT * FROM #FRIENDS
UNION
SELECT * FROM #FRIENDS_2

DROP TABLE #FRIENDS

DROP TABLE #FRIENDS_2

I get this error:

Server: Msg 137, Level 15, State 2, Procedure GetMyFriends, Line 24
Must declare the variable '@UserID'.

I've declared that variable in the CREATE PROCEDURE statement. Am I missing
something?


--
Anthony Robinson
AMR Consulting

Stored Procedure Variables Anthony Robinson
10/29/2005 8:27:51 PM
I'm getting an error when trying to compile a stored procedure.

Here's the code:

CREATE PROCEDURE GetMyFriends=20
@UserdID INT
AS

--DECLARE @FRIENDID INT

CREATE TABLE #FRIENDS
(USERID INT,
FRIENDID INT,
INVITATIONTYPE BIT,
CREATEDDATE DATETIME)

CREATE TABLE #FRIENDS_2
(USERID INT,
FRIENDID INT,
INVITATIONTYPE BIT,
CREATEDDATE DATETIME)

DECLARE @FRIENDID INT

INSERT INTO #FRIENDS
SELECT * FROM ZUSERFRIENDS WHERE USERID =3D @UserID
--SELECT * FROM #FRIENDS
--SELECT * FROM #FRIENDS_2

DECLARE FRIENDS_CURSOR CURSOR
FOR=20
SELECT DISTINCT FRIENDID FROM #FRIENDS=20

OPEN FRIENDS_CURSOR

FETCH NEXT FROM FRIENDS_CURSOR
INTO @FRIENDID
WHILE @@FETCH_STATUS =3D 0
BEGIN
INSERT INTO #FRIENDS_2
SELECT TOP 1* FROM ZUSERFRIENDS WHERE USERID =3D @FRIENDID
FETCH NEXT FROM FRIENDS_CURSOR
INTO @FRIENDID
END


CLOSE FRIENDS_CURSOR
DEALLOCATE FRIENDS_CURSOR

SELECT * FROM #FRIENDS
UNION
SELECT * FROM #FRIENDS_2

DROP TABLE #FRIENDS

DROP TABLE #FRIENDS_2

I get this error:

Server: Msg 137, Level 15, State 2, Procedure GetMyFriends, Line 24
Must declare the variable '@UserID'.

I've declared that variable in the CREATE PROCEDURE statement. Am I =
missing something?


--=20
Anthony Robinson
AddThis Social Bookmark Button