select * into #t from yourtable
go
alter table #t
drop column id
go
truncate table yourtable
go
insert yourtable select * from #t
go
go
alter table #t
drop column id
go
truncate table yourtable
go
insert yourtable select * from #t
go
SELECT IDENTITY(int, 1,1) AS ID_Num
INTO NewTable
FROM OldTable
下面的例子只能处理一次删除一条记录的情况(未经测试):
create trigger trigger_name on table_name for delete
as
set identity_insert on--这一句的作用是可以在identity列中显示插入值
update table_name set 序号 = 序号 -1 where 序号>(select 序号 from deleted)
set identity_insert off数据量大时对性能会有很大影响。
一般情况下没有必要这么做,请问你的“序号”字段有业务意义吗?如果没有何必管他,如果有的话更加不能动了,因为可能某个表引用了这个字段作为外健。
如果非要这样只能以牺牲效率为代价的