ID自动编号的数据库当中删除了一条记录后,如何才能使编号仍然保持连续

ID自动编号的数据库当中删除了一条记录后,如何才能使编号仍然保持连续

可不可以这样,当删除一条记录后 让后面的ID都减一

可以,应该怎么写啊?

这是很多人的误会:
自动编号只代表数据库只保证自动建立的编号是唯一, 并不保证编号是连续的.

至於你第2个问题, 可使用:
1. 程序语言实现(PHP, JAVA, C++, VB), 当执行删除操件,
update xxx set id = id - 1 where id > deleteId

2. 建立数据库"触发" (Trigger)

但老实说, 保存ID的连续性在实际上并不存在任何意义.
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-06-03
没有任何意义,如果你是想在页面上显示为第几条时又不想1下来就是5,你完全可以先算出总条数,
然后每次循环总条数减1,然后在页面输出就OK
如下面显示
5
4
3
2
1
当然这是在倒续排列
例子:
<%
n=100
for i=1 to 50
response.write n&"<br>"
n=n-1
next
%>
第2个回答  2009-05-31
有意义吗?标识列就是不重复的
告诉你个方法吧`把ID自增涨那列删掉`在从添加
ID就从1,2,3,4,....从排了

用 truncate table 表名 别看错了
你试一下吧`试完给我分` 那语句意思就是删除表从新建`标识列从新排列
相似回答