USE pubs GO -- Declare the variables to store the values returned by FETCH. DECLARE @au_lname varchar(40), @au_fname varchar(20) DECLARE @sLongtext varchar(250) select @sLongtext = '' DECLARE authors_cursor CURSOR FOR SELECT au_lname, au_fname FROM authors WHERE au_lname LIKE 'B%' ORDER BY au_lname, au_fname OPEN authors_cursor -- Perform the first fetch and store the values in variables. -- Note: The variables are in the same order as the columns -- in the SELECT statement. FETCH NEXT FROM authors_cursor INTO @au_lname, @au_fname -- Check @@FETCH_STATUS to see if there are any more rows to fetch. WHILE @@FETCH_STATUS = 0 BEGIN -- Concatenate and display the current values in the variables. PRINT 'Author: ' + @au_fname + ' ' + @au_lname set @sLongtext = rtrim(@sLongtext) + @au_fname + '__' + @au_lname -- This is executed as long as the previous fetch succeeds. FETCH NEXT FROM authors_cursor INTO @au_lname, @au_fname END CLOSE authors_cursor DEALLOCATE authors_cursor PRINT 'sLongText=' + @sLongtext GO