declare li_cur scroll cursor for select nm,f1 from tb3 for update declare @i int,@j int,@sf1 int,@snm varchar(20),@sid varchar(20),@nm varchar(20) set @i=0 open li_cur fetch from li_cur into @sid,@snm while @i<=10 begin set @j=rand()*67+1 fetch absolute @j from li_cur into @snm,@sf1 while @sf1 =1 begin set @j=(@j+1)%67+1 fetch absolute @j from li_cur into @snm,@sf1 end print @nm解读这段代码
时间: 2023-05-17 07:04:32 浏览: 90
这段代码是一个 SQL Server 的游标操作,用于从表 tb3 中选择 nm 和 f1 列,并对其进行更新。首先声明了一个名为 li_cur 的游标,然后定义了一些变量 @i、@j、@sf1、@snm、@sid 和 @nm,并将 @i 的值设置为 0。接着打开游标 li_cur,从中获取 @sid 和 @snm 的值,然后进入一个循环,当 @i 小于等于 10 时执行以下操作:生成一个随机数 @j,然后从游标 li_cur 中获取第 @j 行的 @snm 和 @sf1 的值,如果 @sf1 等于 1,则继续生成下一个随机数,直到 @sf1 不等于 1,然后打印出 @nm 的值。
阅读全文