我目前正在尝试用一些值填充表格(BIV)。我想要实现的是以下内容:
ID OldState NewState
0 0 0
1 0 0
2 0 0
3 0 0
...
511 0 0
我想用0 ... 511之间的值手动填充一行。
我认为这很容易做到:
DELETE FROM BIV
DECLARE @id as int
SET @id = 0;
WHILE @id < 512
BEGIN
INSERT INTO BIV (Id, OldState, NewState) VALUES (@id, 0 ,0);
SET @id = @id + 1;
END;
但是,我最终得到以下内容
ID OldState NewState
0 0 0
1 0 0
1 0 0
1 0 0
... 0 0
1 0 0
(512 rows in total)
在我看来,@id并没有按照我想要的方式递增(但它会递增一次)。看起来@id的值在两次迭代之间没有保留。
那么,我想念什么?我不介意表演,这是一项一次性的任务。
答案 0 :(得分:1)
我发现了问题。这有点令人尴尬,但是显然在创建表时,我使用Id列而不是int类型位创建了它。