Yeah..it's evaluated at the end, but it doesn't throw an error...Another feature!USE NorthwindCREATE TABLE myTable99(Col1 int)GOINSERT INTO myTable99(Col1)SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4GODECLARE myCursor99 CURSOR FOR SELECT Col1 FROM myTable99DECLARE @Col1 intOPEN myCursor99FETCH NEXT FROM myCursor99 INTO @Col1SELECT '@@ERROR = ' + CONVERT(varchar(5),@@ERROR) + ' @@FETCH_STATUS = ' + CONVERT(varchar(5), @@FETCH_STATUS)SELECT @Col1WHILE @@FETCH_STATUS = 0 BEGIN FETCH NEXT FROM myCursor99 INTO @Col1 SELECT '@@ERROR = ' + CONVERT(varchar(5),@@ERROR) + ' @@FETCH_STATUS = ' + CONVERT(varchar(5), @@FETCH_STATUS) SELECT @Col1 FETCH NEXT FROM myCursor99 INTO @Col1 SELECT '@@ERROR = ' + CONVERT(varchar(5),@@ERROR) + ' @@FETCH_STATUS = ' + CONVERT(varchar(5), @@FETCH_STATUS) SELECT @Col1 ENDCLOSE myCursor99DEALLOCATE myCursor99GODROP Table myTable99GO
Brett8-)