所以表中的最后一个值是9,下一个增量将产生10,这已经是 生成所以它将是主键违规错误。
因此,plz指导如何在我的项目中实现自动索引生成。
答案 0 :(得分:2)
为什么不把这个列设为Identity column
CREATE TABLE [dbo].[Foo](
[Foo] [int] IDENTITY(1,1) NOT NULL,
//Other columns
)
或如果数据库已经创建则更改
ALTER TABLE [dbo].[Foo](
[Foo] [int] IDENTITY(<Enter your last maximum number in the database>,1) NOT NULL,
//Other columns
)
希望有所帮助
答案 1 :(得分:2)
而不是COUNTING ROWS,你需要从表中获取该字段/列的MAX值,这里根据给定的值,它将是11,然后将其增加+1。
因此,您需要在代码中使用以下查询,
Select Max(Key Field) + 1 from [table name]//this will give you new key value i.e. 12
我建议您使用Identity列,这样您就不必担心增加主键值。
答案 2 :(得分:0)
检查自动索引的数据类型...我怀疑它被视为字符串。您需要做的第一件事是将数据类型定义为整数。到目前为止你的播种还可以。