提前感谢您的帮助。
我想将增量数字作为字符串插入以将一些批量测试数加载到数据库中,这是我正在使用的:
Declare
@Serialcounter bigint
set @Serialcounter = 0
while @Serialcounter < 10
insert into [TrackTrace].[dbo].[TAB_ELEMENT] ([Serial], [Batch], [Batch_Id], [QCSample], [StationID])
values(Convert(varchar(60), @Serialcounter), 'test', 8989, 0, 1)
set @Serialcounter = (@Serialcounter + 1)
但是当我这样做时,它不会增加计数器,我只是插入重复的数字,不要停止。我认为我的问题是我的变量在while循环之外递增,但我不确定如何纠正这个。
答案 0 :(得分:2)
Declare
@Serialcounter bigint
set @Serialcounter = 0
while @Serialcounter < 10
BEGIN
PRINT @Serialcounter
--insert into [TrackTrace].[dbo].[TAB_ELEMENT]
--([Serial]
--,[Batch]
--,[Batch_Id]
--,[QCSample]
--,[StationID])
--Values(Convert(varchar(60),@Serialcounter),'test',8989,0,1)
set @Serialcounter = (@Serialcounter +1 )
END
你没有给出开始和结束所以所有循环只考虑第一个语句
答案 1 :(得分:1)
我遗漏了BEGIN
和END
语句
DECLARE
@Serialcounter BIGINT
SET @Serialcounter = 0
WHILE @Serialcounter < 10
BEGIN -- here
INSERT INTO [TrackTrace].[dbo].[TAB_ELEMENT]
([Serial]
,[Batch]
,[Batch_Id]
,[QCSample]
,[StationID])
VALUES(Convert(varchar(60),@Serialcounter),'test',8989,0,1)
SET @Serialcounter = (@Serialcounter +1 )
END -- and here