Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 在sql server 2008中删除数据后重新设定/重置标识列_Sql Server_Sql Server 2008_Entity Framework - Fatal编程技术网

Sql server 在sql server 2008中删除数据后重新设定/重置标识列

Sql server 在sql server 2008中删除数据后重新设定/重置标识列,sql-server,sql-server-2008,entity-framework,Sql Server,Sql Server 2008,Entity Framework,当我从启用了identity seed id的列中删除数据时,它不会重置回正确的数字,而是继续计数。 例如: 我添加了10个项目,因此最新添加的项目的id为10,例如,当我从数据库中删除这些项目时,id应该将自身重置为0,但它仍然从11开始计数。。这并不完全一致,我正在使用实体框架从数据库中添加/删除内容,所以我的问题是,是否有办法解决这个问题?可能通过实体请求/查询?这是标识列的正确行为。该值将继续递增。如果您添加11项,从1开始,下一项将是12项。如果删除前10个,则不希望标识值从1开始,因

当我从启用了identity seed id的列中删除数据时,它不会重置回正确的数字,而是继续计数。 例如:


我添加了10个项目,因此最新添加的项目的id为10,例如,当我从数据库中删除这些项目时,id应该将自身重置为0,但它仍然从11开始计数。。这并不完全一致,我正在使用实体框架从数据库中添加/删除内容,所以我的问题是,是否有办法解决这个问题?可能通过实体请求/查询?

这是标识列的正确行为。该值将继续递增。如果您添加11项,从1开始,下一项将是12项。如果删除前10个,则不希望标识值从1开始,因为第11个值将发生冲突。如果您想为表格重新设定种子,可以使用


截断一个表也会重置它的标识值。

cmd.CommandText=string.Format(“DBCC CHECKIDENT({0},RESEED,0)”,YourTableName)


从零开始快乐

如果要删除表中的所有内容,并且希望重新设置标识,只需使用
TRUNCATE