Sql server 游标使用

DECLARE @sql VARCHAR(max)
DECLARE @pcode NVARCHAR(50)
DECLARE @code NVARCHAR(50)
DECLARE @type INT=-1
DECLARE @tmptype INT=-1

SET @sql=''

DECLARE myCursor CURSOR FOR SELECT pcode,code,type FROM test ORDER BY type

OPEN myCursor

FETCH NEXT FROM myCursor INTO @pcode,@code,@type

WHILE @@FETCH_STATUS=0
	BEGIN
		BEGIN
		IF	@type!=@tmptype
			BEGIN
				SET @sql=@sql+';'	
				SET @tmptype=@type
			END
		SET	@sql=@sql+'UPDATE tbProduction set vManagerCode='''+@code+''' where vProductionCode='''+@pcode+''';'
		
		END
		
		FETCH NEXT FROM myCursor INTO @pcode,@code,@type
	END
	
CLOSE myCursor
DEALLOCATE 	myCursor

PRINT @sql

  

posted on 2015-04-20 17:12  木龙哥  阅读(242)  评论(0编辑  收藏  举报

导航