dnf白字和所有攻击力:数据库id自增问题

来源:百度文库 编辑:神马品牌网 时间:2024/05/01 07:26:13
请问在sql server中设置了一个id列,自增1,那当我删除了其中一条记录后(比如id=5),那么id会接着写(如:1,2,3,4,6),那么如何让删除了id=5后,id=6的值接在id=5上,即id号仍是连续的(id=1,2,3,4,5,6),谢谢啦!

好像不容易
因为id自增是归sql server管的
用程序很难修改

没办法的

除非这个增量是直接由你控制的

是哦
删除了自动排列的ID是无法再按12345的顺序排起来的
我试过N次了
唯一的办法
先把记录导出来
再清空
再把数据库压缩修复一下
这样又开始从1开始计算了
你再把导出的记录一条条的导入就可以啦~~~
我是这么认为的~~

其实,SQLServer这样控制也有其道理
你想想
举个可能非常可笑的例子
自增字段的一个非常重要的目的就是实现唯一性
而与之类似的就是我们人类中 , 每一个人都是一唯一的
人都有生老病死
若某一个人因为种种原因死去后
那虽然这个已经死了 ,但世界永远也不会再出现一个完全相同的人了
所以 , 与之相同
已经删除的资料对应的自增编号 ,是不允许再被使用的了

当然, 若真按楼上的方法恢复自增顺序号 ,重新使用已经被删除了的资料的自增号的话 , 则就无法再追踪是否有资料被删除过 , 哪些资料被删除过了