这个SQL高循环插入怎么优化

这个SQL高循环插入怎么优化
declare @i VARCHAR(32)
SET @i = 0
declare @passwd VARCHAR(32)
WHILE @i < 9999999
BEGIN
SET @passwd = substring(sys.fn_sqlvarbasetostr(HashBytes('MD5',@i)),3,32)

INSERT INTO MD5(md5,password) VALUES (@md5,@passwd)
SET @i=@i+1
END

存储过程我不太熟悉 但是我想能不能把一条条的插入变成 一段段的插入 比如1000条插入一次 觉得这个思路如何?

SQL循环插入
SQL循环插入记录
SQL循环插入记录

http://blog.csdn.net/zy_281870667/article/details/51131696

declare @i VARCHAR(32)
declare @passwd VARCHAR(32)
DECLARE @j INT
SET @i = 0

WHILE @i<100000

BEGIN

BEGIN TRANSACTION

SET @j = 0
WHILE @j< 1000

BEGIN

SET @passwd = substring(sys.fn_sqlvarbasetostr(HashBytes('MD5',@i)),3,32)

INSERT INTO md5 (ky,words) VALUES (@i,@passwd)

SET @i = @i+1
SET @j = @j+1
END
COMMIT TRANSACTION
END