【发布时间】:2010-10-14 09:05:10
【问题描述】:
我正在制作一个存储联系人的 SQL 数据库。我希望能够删除联系人,每个联系人的正确 id 对我的软件连接到它至关重要。可以说我联系了詹姆斯,他是第一个。他的id是0。我加了Mary,她的id是1。如果我删除James,Mary的id怎么设置为0而不是保持1呢?它必须重置,因为她现在是第一个。换句话说,当某人被删除时,如何重置数据库中的所有 ID?谢谢
【问题讨论】:
-
您究竟为什么要这样做?如果您需要按进入顺序保留它们,您可以设置日期时间戳或添加列以保持排名。
-
支持这个问题。虽然我同意 OP 试图做的事情是不明智的,但这个问题对于新手程序员来说是一个很好的路标,说明什么不该做什么以及为什么。得到很多赞成的答案似乎很好地解决了这个问题并且很有启发性。
-
对于初学者来说这是一个典型的错误。感觉他们的 ID 会用完,他们想放慢增长速度。
-
一个常规整数只有 2,187,000,000 或类似的空间。因此,它很容易用完并且需要重新组织 id。
-
@djangofan:你用完了多少次? ....
标签: sql-server database-design identity