首页 > 解决方案 > 如何使用负值 DBCC CHECKIDENT RESEED

问题描述

我想从负值开始重新设置我的身份列。

DBCC CHECKIDENT ('dbo.myTable', RESEED, 1);

这工作得很好,但是:

DBCC CHECKIDENT ('dbo.myTable', RESEED, -1);

失败了

消息 104366,级别 16,状态 1,第 12 行重新种子值应在 DBCC CheckIdent 语句中提供。

即使语法看起来相同。创建具有负种子值的新表也可以正常工作。

我该怎么做呢?

标签: tsqlazure-sql-data-warehouse

解决方案


这对我来说很好:

CREATE TABLE testident (id INT IDENTITY(-1, 1), fname VARCHAR(100))
GO 
INSERT INTO testident (fname)
VALUES 
('david'),
('mark'),
('bill'),
('jane')

DBCC CHECKIDENT ('dbo.testident', RESEED, -2);

INSERT INTO testident (fname)
VALUES 
('david'),
('mark'),
('bill'),
('jane')

select * 
from testident

推荐阅读