Nei*_*ell 2 database database-design types identity future-proof
自动编号字段(例如,SQL Server中的"标识")是为数据库表提供唯一键的常用方法.然而,鉴于它们非常普遍,在未来的某个时刻,我们将处理它们将开始达到其最大值的问题.
有没有人知道或有推荐的策略来避免这种情况?我希望很多答案都会建议转换为guid,但考虑到这将需要大量的开发(特别是在许多系统集成并共享价值的情况下)还有另外一种方法吗?我们是否朝着更新的硬件/操作系统/数据库只允许更大和更大的整数值的方向发展?
Meh*_*ari 11
如果您确实希望自己的ID用完,请使用bigint.对于大多数实际用途,它永远不会耗尽,如果确实如此,你应该使用a uniqueidentifier.
如果你有30亿美元(这意味着3.0GHz处理器上的交易/周期)每秒交易,那么bigint耗尽大约一个世纪(即使你为标志做了一点点).
也就是说,有一次," 640K对任何人都应该足够了. ":)