您的位置:首页 > 数据库

SQL中游标使用--遍历数据逐行更新:相当于for循环

2015-01-05 09:18 309 查看
更新网站数据的时候遇到的,使用游标很好处理哦,在这里和大家分享下

DECLARE @school varchar(50)

DECLARE @city varchar(50)

DECLARE @lg int

DECLARE @ws int

DECLARE My_Cursor CURSOR --定义游标

FOR (SELECT 学校,地区,[2013年理工类],[2013年文史类] FROM ScoreSchoolCity where ([2013年理工类] is not null or [2013年文史类] is not null))

OPEN My_Cursor; --打开游标

FETCH NEXT FROM My_Cursor into @school,@city,@lg,@ws ;--读取第一行数据

WHILE @@FETCH_STATUS = 0 --游标读取下一条数据是否成功,0表示成功

BEGIN

PRINT @school; --打印数据

print @city; --打印数据

print @lg; --打印数据

print @ws; --打印数据

UPDATE pj.dbo.ScoreSchoolCity SET [理工类2013年录取分数线] =@lg,[文史类类2013年录取分数线]=@ws WHERE 学校名称 = @school and 招生省区=@city; --更新数据

FETCH NEXT FROM My_Cursor into @school,@city,@lg,@ws ; --读取下一行数据

end

CLOSE My_Cursor; --关闭游标

DEALLOCATE My_Cursor; --释放游标

GO
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: