日期:2014-05-19  浏览次数:20567 次

如何修改字段为自增列
SQL   2000

字段   autoid   为   int     里面的值无重复的
如何用语句把这个字段修改为identity(1,1)??
貌似直接alter   table不行?

我试图在表中先建一字段col,更新为和autoid一样,
把autoid删掉后,新增字段autoid为自增的,再用col列更新回来,
但貌似又不更更新自增列~

请教各位大大   ,谢谢了!!

------解决方案--------------------
建一个表
test(autoid int identity(1,1),...)
set ideytity_insert test on
insert test(autoid,...) select Field,... from [原表] order by autoid
------解决方案--------------------
是的
------解决方案--------------------
不可以修改为标识列,却可以增加标识列
------解决方案--------------------
好象不能改,只能加一列为自增列
------解决方案--------------------
你想做到什么?子增列是不允许修改的,如果你只是想把每个字段加一就可以用WHILE循环
如果你只是想加段自增长列的话可以用临时表的方法实现
CREATE TABLE TEMP#A
(
SNO INT IDENTITY(1,1)NOT NULL,
-- 以下是和你原表相同的字段
...,
...
)
insert into TEMP#A(除自增长字段) select (除要替代字段) from yourtable