SQL如何对指定的表把 ID【1-1000】顺序插入
例如有data_a要给id插入1000个数字1-1000并且顺序排列id123另外如果删除了2再写入就直接写4了如何能让顺序重排?谢谢...
例如有 data_a 要给 id插入1000个数字1-1000 并且顺序排列
id
1
2
3
另外 如果删除了2 再写入就直接写4了
如何能让顺序重排 ?
谢谢 展开
id
1
2
3
另外 如果删除了2 再写入就直接写4了
如何能让顺序重排 ?
谢谢 展开
5个回答
展开全部
标识列时,重排用新增列go
create table t(ID int identity)
insert t default values
insert t default values
insert t default values
delete t where ID=2
select ID=identity(int,1,1) into # from t order by ID
truncate table t
set identity_insert t on ;
go
insert t(ID) select ID from #
go
set identity_insert t off ;
go
--查看
select * from T
ID
-----------
1
2
(2 个资料列受到影响)
create table t(ID int identity)
insert t default values
insert t default values
insert t default values
delete t where ID=2
select ID=identity(int,1,1) into # from t order by ID
truncate table t
set identity_insert t on ;
go
insert t(ID) select ID from #
go
set identity_insert t off ;
go
--查看
select * from T
ID
-----------
1
2
(2 个资料列受到影响)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
建立一个触发器(trigger)吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
有必要吗?这样设计你迟早会出问题的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把id设置成primary key
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询