我有一个由实体框架代码生成的数据库。我有一个11000行和5列的表。
列Id
是主键:
在从应用程序插入(使用EF)时,我第一次收到错误;经过一些研究后,我去了数据库,手动插入一条记录,看看它是否正常工作,我得到了这个错误:
所有列都是外键,每个列都存在值1。
有人能告诉我为什么会收到这个错误吗?
就像我说的那样,表已经有11000行了,选择查询时没有错误,更新时没有错误,插入期间数据库生成的主键不正确!
密钥10987存在!
答案 0 :(得分:4)
出于某种原因,你的身份证已关闭。因此,当您添加新记录时,它会尝试重用现有记录。使用" DBCC CHECKIDENT(' CandidatePositionStatus',RESEED,11000);"所以它试图插入的下一个id值应该是11001,一个新值。