0

我想更新表中的id列并插入到column1600 中,如下所示:

更新前的表格:

id   name     date     comment
------------------------------
1    jack     9/10/12   null
100  david    9/11/12   20
158  sara     9/12/12   null
.

更新后的表格:

1    jack     9/10/12   null
2    david    9/11/12   20
3    sara     9/12/12   null
.
597   "     "      "
598   "     "      "
599   "     "      "
600   "     "      "
4

1 回答 1

0

您需要做的第一件事是找出您有多少行

DECLARE @COUNTER INT
SET @COUNTER = SELECT COUNT(*) FROM tbl_tablename

然后声明一个结构几乎完全一样的临时表(ID除外)

DECLARE @tmp_table TABLE

P_Id int PRIMARY KEY IDENTITY,
其余字段相同

现在将除 id 之外的所有内容插入到新表中

INSERT INTO @tmp_table(从 tbl_tablename 中选择名称、日期、注释)

清空原表

从 tbl_tablename 中删除

并插入临时表中的值

插入 tbl_tablename (SELECT * FROM @tmp_table)

现在您可以添加附加值

WHILE (@COUNTER <= 600)
BEGIN
SET @COUNTER = @COUNTER + 1
INSERT INTO tbl_tablename (@COUNTER, '', null, null)
END

而已。希望对你有帮助

于 2013-01-27T16:45:29.677 回答