This is the cursor template that I use... it works better than the default one, and allows BREAK and CONTINUE easily
DECLARE curName CURSOR LOCAL FAST_FORWARD FOR
select *
from mytablename
DECLARE variables
OPEN curName
WHILE 1=1
BEGIN
FETCH NEXT FROM curSopUpdate23 INTO @sopnumbe,@soptype,@dtOnTruck, @dtOnJob
if @@fetch_status <> 0 begin
break
end
END
CLOSE curName
DEALLOCATE curName