自动ID分配

时间:2014-03-11 22:28:09

标签: vb.net visual-studio visual-studio-2012

我是一名学生,我在使用自动增量方面遇到了问题,因为当我删除一行时,它会继续增加。说明:

我想自动增加id 所以:

  id   name      age

  1    michael   18

  2    katy      17

  3    jack      20

现在我删除第3行,当我点击新按钮时,它会转到id 4而不是id 3 我试过rows.count并刷新文本框但没有

一些adicional信息

ds= dataset
maxrows = ds.Tables("virtualtable").Rows.Count

idcliTextBox.Text = maxrows

如何将id设置为真正的最后一行?

1 个答案:

答案 0 :(得分:2)

这是正确的行为,这不是问题。通常,数据库中的自动增量列永远不会被重置,以容纳因删除先前插入的记录而导致的空洞。 自动增量列通常用作主键,以唯一标识表中的单个记录。

假设您的表代表students,其中ID字段值用作另一个表examresults的外键。在此表中,您可以存储学生的考试成绩。您的学生Katy(2)在考试表中有两个关于数学和地理毕业的记录。

如果从表students删除ID = 2的记录,并且examresults的相关记录将Jack的记录从3更改为2意味着您还需要更改相关记录杰克的考试结果。如果你考虑一下,这是非常不切实际和无用的。