Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/70.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 在不删除的情况下重置表中的id_Sql_Primary Key - Fatal编程技术网

Sql 在不删除的情况下重置表中的id

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 '?'",

表中有十个条目,主键id设置为autoincrement。如果我删除所有条目并再插入一个条目,其id将为11,是否可以再次将id重置为1?

尝试使用如下的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";

尝试使用如下所示的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。请参阅,这意味着您已经在(要截断的)表和另一个表之间设置了依赖关系。