设置从某个值开始的自动增量值 T-SQL

Setting an auto increment value starting from a certain value T-SQL

我的 table 中有一个空列 WHID。我需要使用自动值更新此列,其中第一个值将等于 17

所以,我期望结果:

WHID:
17
18
19
20
21
22
....
etc.

我的代码是:

DECLARE @IncrementValue int
SET @IncrementValue = 17

UPDATE ClientEpisode 
SET [WHID] = @IncrementValue + 1 

我在所有行中得到 18 的结果(这不是我需要的)。

我在 [WHID] = .... 中写了什么或如何修改我的代码以获得预期结果?

您可以使用 identity 约束,因为您将 table 构建为

CREATE TABLE MyTable (WHID INT IDENTITY(17,1))

此处您需要删除现有列并创建具有 identity 约束

的新列
Alter tableName Drop Column WHID

然后使用新约束创建列

Alter tableName Add WHID Int Identity(17, 1) Go