有一个数据库,ID做主键,每次取最大值加一做主键,但是当中间某几条数据被删除,则需要取被删的最小的值做主键。
例如:
表中有如下数据
ID Name
1 A
2 B
3 C
4 D
5 E
正常情况下,再插入一条数据,ID应该为6,但是假如插入第六条数据之前,ID为2和3 的数据被删除了,此时再插入,那么ID应该为2,而不是6,请问如何控制????
充分利用数据库主键
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
11条回答 默认 最新
weixin_42565855 2011-09-01 20:43关注如果一定要做,可以将主键ID排序好放进数组,
然后 判断 a[i]-a[i-1]是否大于2,如果大于2,获得主键a[i-1] + 1本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报