第一种:用游标,和WHILE可以遍历您的查询中的每一条记录并将要求的字段传给变量进行相应的处理
==================
DECLARE @A1 VARCHAR(10),@A2 VARCHAR(10),@A3 INT
DECLARE YOUCURNAME CURSOR FOR SELECT A1,A2,A3 FROM YOUTABLENAME
OPEN YOUCURNAME
fetch next from youcurname into @a1,@a2,@a3
while @@fetch_status<>-1
begin
update ... set ...=@a1,...=a2 ...-a3 where ...
......您要执行的操作写在这里
fetch next from youcurname into @a1,@a2,@a3
end
close youcurname
deallocate youcurname
第二种:SQL Server 中没有For循环,可以使用while循环代替,另外你写的存储过程还有几处有问题,一并给你改过来了。
==================
CREATE PROCEDURE AddStudents AS
Begin
Declare @n bigint
Declare @Sql nvarchar(225)
set @n=0
while @n<10000
begin
Set @Sql='Insert into Students Values(''Hamunet'',10,''SianChina'',''123456789123'')'
Exec (@Sql)
set @n=@n+1
End