主页 > 知识库 > mssql数据库游标批量修改符合条件记录的方法

mssql数据库游标批量修改符合条件记录的方法

热门标签:沧州营销外呼系统软件 海南自动外呼系统价格 创业电销机器人 沈阳智能外呼系统代理 舞钢市地图标注app 九鹿林外呼系统怎么收费 松原导航地图标注 电销机器人虚拟号码 浙江地图标注
需求:由于项目刚上传,没有票数,为了表现出一定的人气,需要在一开始把各项目的票数赋一个值 ,

但每个项目不能一样,否则容易看出问题,呵呵 。
复制代码 代码如下:

DECLARE @Id varchar(50)
DECLARE My_Cursor CURSOR --定义游标
FOR (SELECT Id FROM dbo.kinpanAwardProject where session=9) --查出需要的集合放到游标中
OPEN My_Cursor; --打开游标
FETCH NEXT FROM My_Cursor INTO @Id; --读取第一行数据(将Id放到@Id变量中)
WHILE @@FETCH_STATUS = 0
BEGIN
PRINT @Id; --打印数据(Id)
UPDATE dbo.kinpanAwardProject SET ProTicketCount = cast( floor(rand()*30) as int)+40 WHERE Id = @Id; --更新数据,使用随机数。
FETCH NEXT FROM My_Cursor INTO @Id; --读取下一行数据(将查询的Id放到@Id变量中)
END
CLOSE My_Cursor; --关闭游标
DEALLOCATE My_Cursor; --释放游标
GO

 

还有一种用法,可能更加好,我认为,如果不需要对id进行判断的话,在修改时就不需要where查询,直接修改游标当前位置会更快。
复制代码 代码如下:

DECLARE My_Cursor CURSOR --定义游标
FOR (SELECT * FROM dbo.MemberAccount) --查出需要的集合放到游标中
OPEN My_Cursor; --打开游标
FETCH NEXT FROM My_Cursor ; --读取第一行数据
WHILE @@FETCH_STATUS = 0
BEGIN
--UPDATE dbo.MemberAccount SET UserName = UserName + 'A' WHERE CURRENT OF My_Cursor; --更新
--DELETE FROM dbo.MemberAccount WHERE CURRENT OF My_Cursor; --删除
FETCH NEXT FROM My_Cursor; --读取下一行数据
END
CLOSE My_Cursor; --关闭游标
DEALLOCATE My_Cursor; --释放游标
GO
您可能感兴趣的文章:
  • 将所有符合条件的结果拼接成一列并用逗号隔开的一个sql语句
  • Mysql获取id最大值、表的记录总数等相关问题的方法汇总
  • SQL一条语句统计记录总数及各状态数
  • Java实现获得MySQL数据库中所有表的记录总数可行方法
  • SQL查询数据库中符合条件的记录的总数

标签:宝鸡 咸宁 商洛 西藏 公主岭 日喀则 海口 台湾

巨人网络通讯声明:本文标题《mssql数据库游标批量修改符合条件记录的方法》,本文关键词  mssql,数据库,游标,批量,;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 下面列出与本文章《mssql数据库游标批量修改符合条件记录的方法》相关的同类信息!
  • 本页收集关于mssql数据库游标批量修改符合条件记录的方法的相关信息资讯供网民参考!
  • 推荐文章