对于SQL语法,我还很陌生,所以我想知道如何为现有列设置identity(auto_increment)
的值。
对于MySQL,它是:
ALTER TABLE users AUTO_INCREMENT = 1001;
因此,基本上,我需要使用与SQL(MS SQL Studio)相同的命令。
答案 0 :(得分:4)
您需要遵循以下原则:
ALTER TABLE users Add UserId INT NOT NULL IDENTITY(1001, 1)
此外,如果这是现有的列,则可能需要创建不具有NOT NULL的上述新列,插入IDENTITY INSERT设置为true的值,删除旧列,然后可以重命名新列更改为旧列名称,并设置可能存在的所有索引,因为我认为您不能将现有列更改为标识列。
答案 1 :(得分:3)
定义标识列时,可以设置初始值和增量:
create table t (
id int identity(100, 1) primary key,
. . .
);
要将其设置为现有列:
dbcc checkident ('t', reseed, 100);