复位自动ID的问题

3tzjq 2004-06-07 11:09:11

如某表共为100行,应该是从1到100,我删除了ID为1、2、8的数据行后,应该是从1到97。但数据库好像并不能自动复位?那么该怎样使自动增量ID重新复位?
...全文
188 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
leeboyan 2004-06-12
  • 打赏
  • 举报
回复
哪怎样再将它设为第一行呢?
-------------------------------
无所谓了,表只是存储数据,你select 的时候把id放第一位不就行了

另:如果非要放第一行,那就在设计表中作,先删,然后再在第一列前插入一列id,设为自增
3tzjq 2004-06-09
  • 打赏
  • 举报
回复
哪怎样再将它设为第一行呢?
wlyx2003 2004-06-08
  • 打赏
  • 举报
回复
leeboyan(★★宝宝★★) 的方法是正确的,用SQL语句来操作,如果不会的话也可以在SQL SERVER里也可以操作,直接把ID字段删除,再添加ID字段,设置类型为自增类型。
十八笔画 2004-06-08
  • 打赏
  • 举报
回复
不要用自动增量,自动增量生成的数就不会再次生成了
建议在添加记录是自己判断
3tzjq 2004-06-08
  • 打赏
  • 举报
回复
leeboyan(★★宝宝★★) 确实是个好办法
leeboyan 2004-06-07
  • 打赏
  • 举报
回复
那就删了再加上:
alter table table1 drop column id
alter table table1 add id int identity(1,1) not null
3tzjq 2004-06-07
  • 打赏
  • 举报
回复
我又不要删除整个数据表。所以pengdali(大力 V3.0)朋友的方法显然不行!
killygirl 2004-06-07
  • 打赏
  • 举报
回复
用了自增长的后,生成的数就不可以再次生成了,所以要注意啊。
最差的解决办法是用游标了~~
pengdali 2004-06-07
  • 打赏
  • 举报
回复
有兩種方法:
方法1:
truncate table 你的表名 --這樣不但將數據刪除,而且可以重新置位identity屬性的字段。

方法2:
delete from 你的表名
dbcc checkident(你的表名,reseed,0) --重新置位identity屬性的字段,讓其下個值從1開始
3tzjq 2004-06-07
  • 打赏
  • 举报
回复
大家有没有好的解决方案啊!

22,294

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧