将特定有界数字插入多列表的列中

时间:2013-01-27 13:09:31

标签: sql sql-server sql-server-2000

我想更新表格中的id列,然后像这样插入column1到600:

更新前的表格:

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   "     "      "

1 个答案:

答案 0 :(得分:0)

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

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

然后声明一个几乎具有确切结构的临时表(ID除外)

DECLARE @tmp_table表

P_Id int PRIMARY KEY IDENTITY,
其余的领域是相同的 )

现在在新表中插入除id

之外的所有内容

INSERT INTO @tmp_table (SELECT名称,日期,注释FROM tbl_tablename)

清除原始表格

从tbl_tablename删除

并插入temparary表中的值

INSERT INTO tbl_tablename(SELECT * FROM @tmp_table)

现在您可以添加附加值

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

就是这样。希望它能帮到你