我将ID作为主键并启用ID中的自动增量。现在假设ID是
1 ram
2 shyam
3 hari
4 sita
如果我删除id并尝试添加新值,则数据库将具有
1 ram
2 shyam
4 sita
5 themos
但我希望它是
1 ram
2 shyam
3 sita
4 themos
我想通过java代码实现这一点。
答案 0 :(得分:2)
您已经选择了一个自动递增的数据库密钥,它正在执行它应该执行的操作。
由于删除而导致的序列中的任何空白都不应该引起您的关注。如果他们那么你有一个破坏的数据库设计。
否则,如果你真的必须使用临时表来移出数据并重新执行此操作,或者执行一些非常愚蠢的复杂锁定来处理删除标记以覆盖以后的插入,就像我说的那样愚蠢。哦,然后处理烹饪实时数据的后果。
修复破坏的数据库设计要简单得多。