我需要标识列的更改增量值
例如 我创建了带有标识列的表测试表
let headers = new Headers();
headers.append('Content-Type', 'application/json');
let options = new RequestOptions({ headers: headers });
return this.http.post(url, JSON.stringify(postdata), options).map(res => res.json());
现在可以使用
轻松重新设定Identity Column的起始值Promise.using
但我想将增量值 1更改为10 是否有任何sql命令可以工作..
从SSMS 2016更改时,我收到此错误
答案 0 :(得分:0)
要更改增量,您需要删除现有的identity()
列并添加新列。
alter table test drop column Id;
alter table test add Id int identity(100,10);
如果要保留现有值,则需要创建新表,使用identity_insert on
插入现有行,删除旧表,然后重命名新表。
例如:
create table test (id int identity(1,1), name varchar(200) default '')
insert into test default values
insert into test default values
create table new_test (id int identity(100,10), name varchar(200) default '');
set identity_insert new_test on;
insert into new_test (id,name)
select id,name from test
set identity_insert new_test off;
drop table test;
exec sp_rename 'new_test','test';
insert into test default values;
insert into test default values;
select * from test;
rextester演示:http://rextester.com/XDE9355
返回:
+-----+------+
| id | name |
+-----+------+
| 1 | |
| 2 | |
| 100 | |
| 110 | |
+-----+------+