Sql 在不删除的情况下重置表中的id
表中有十个条目,主键id设置为autoincrement。如果我删除所有条目并再插入一个条目,其id将为11,是否可以再次将id重置为1?尝试使用如下的truncate table命令:Sql 在不删除的情况下重置表中的id,sql,primary-key,Sql,Primary Key,表中有十个条目,主键id设置为autoincrement。如果我删除所有条目并再插入一个条目,其id将为11,是否可以再次将id重置为1?尝试使用如下的truncate table命令: TRUNCATE TABLE tablename 它将自动递增id重置为1 如果使用外键将您的表与其他表参照,则可以使用以下命令启用/禁用CONTAINT: 要启用约束,请执行以下操作: EXEC sp_msforeachtable @command1="print '?'",
TRUNCATE TABLE tablename
它将自动递增id重置为1
如果使用外键将您的表与其他表参照,则可以使用以下命令启用/禁用CONTAINT:
要启用约束,请执行以下操作:
EXEC sp_msforeachtable @command1="print '?'",
@command2="ALTER TABLE ? WITH CHECK CHECK CONSTRAINT all";
EXEC sp_msforeachtable "ALTER TABLE ? NOCHECK CONSTRAINT all";
要禁用约束,请执行以下操作:
EXEC sp_msforeachtable @command1="print '?'",
@command2="ALTER TABLE ? WITH CHECK CHECK CONSTRAINT all";
EXEC sp_msforeachtable "ALTER TABLE ? NOCHECK CONSTRAINT all";
尝试使用如下所示的truncate table命令:
TRUNCATE TABLE tablename
它将自动递增id重置为1
如果使用外键将您的表与其他表参照,则可以使用以下命令启用/禁用CONTAINT:
要启用约束,请执行以下操作:
EXEC sp_msforeachtable @command1="print '?'",
@command2="ALTER TABLE ? WITH CHECK CHECK CONSTRAINT all";
EXEC sp_msforeachtable "ALTER TABLE ? NOCHECK CONSTRAINT all";
要禁用约束,请执行以下操作:
EXEC sp_msforeachtable @command1="print '?'",
@command2="ALTER TABLE ? WITH CHECK CHECK CONSTRAINT all";
EXEC sp_msforeachtable "ALTER TABLE ? NOCHECK CONSTRAINT all";
您可以为“1”设置任何值
您可以为“1”设置任何值。DBCC CHECKIDENT(“表格”,重新设定种子,1)
您可以在msdn上阅读更多内容。DBCC CHECKIDENT(“表格”,重新设定,1)
您可以在msdn上阅读更多信息。Microsoft SQLServer 2008Microsoft SQLServer 2008TRUNCATE将标识列的种子值重置为为为该列定义的种子值。默认种子为1。请参阅,这意味着您已经在(要截断的)表和另一个表之间设置了依赖项。TRUNCATE将标识列的种子值重置为为为该列定义的种子值。默认种子为1。请参阅,这意味着您已经在(要截断的)表和另一个表之间设置了依赖关系。