删除用户后,用户id不顺序
本文关键字:用户 顺序 id 删除 | 更新日期: 2023-09-27 18:16:15
我有一个名为tblUserLogin的表。其中一列被标记为UserID。每当我添加一个用户时,它都会按顺序给他们编号(例如1,2,3)。3,然后添加另一个用户,该用户的UserID为4,下一个数字在一行中。应该是2号吗?这是属性窗口中需要调整的设置吗?由于
不,绝对不应该是2。它可能是一个唯一的标识符。如果其他系统仍然知道用户ID 2,那么当它向您的系统询问用户2时,您应该能够说该用户不存在-而不是返回有关错误用户的信息。
基本上,重用标识符是一个非常糟糕的主意。一旦一个标识符被分配给一个实体,就不应该有相同的标识符(在相同的上下文中)引用不同的实体,也不应该有任何方法改变用于该实体的标识符。您没有说明使用的是哪种数据库类型,但是:
UserID列可能是一个标识列。这意味着它将采用下一个从未使用过的值(如果您在sql server中使用主题种子和增量设置)。
如果不自己生成这些恒等式,就不能让this取未使用的值
假设您正在使用SQL Server IDENTITY列,那么这是正确的和预期的行为。但是,如果您想重用从空白中删除的id,请查看SQL Server Books Online中的示例B:使用通用语法查找标识值