@@ROWCOUNT
Jag har stored procedure som kör en cursor. Den kör cursorn i en if sats. Av någon anledning nollställs @@ROWCOUNT. Även om jag lägger in i en variabel direkt efter select-satsen så returneras NULL
****************KOD***********************
IF @varArgument1 IS NULL
BEGIN
DECLARE Pages_intPageID CURSOR FOR
SELECT Pages.intPageID From Pages
@Rowcount = @@ROWCOUNT
END
FETCH NEXT FROM Pages_intPageID INTO @intSidID
WHILE (@@FETCH_STATUS = 0 AND @intNumber <= @intNrOfRec)
BEGIN
insert into #tmpSidIDs values (@intSidID)
FETCH NEXT FROM Pages_intPageID INTO @intSidID
SELECT @intNumber = @intNumber + 1
END
CLOSE Pages_intPageID
DEALLOCATE Pages_intPageID
SELECT @Rowcount
**********************************************
Varför nollställs värdet?
Svara
Sv: @@ROWCOUNT
Dessvärre har det inget med detta att göra. Vid användande av cursor verkar den inte få ut något värde. Det går bra med en selectsats utanför cursorn
Svara
Sv: @@ROWCOUNT
Hej.
@@ROWCOUNT nollställs vid varje statement som inte returnerar rader.
Som IF, SET m.m. Tydligen också DECLARE.
Fast din variabel borde returnera 0 och inte null
Svara