将现有列更改为标识(identity)列

3

可能并不重要(我记不得所有的语法),但你使用的是哪个数据库? - Rup
4个回答

2

您不能将身份添加到现有的列中,必须创建一个新的列。


1

有一个名为Test的表格

create table Test(ID int)

你可以做到这个

exec sp_rename 'dbo.Test', 'tmp_Test', 'OBJECT'
go

create table dbo.Test(
  ID int not null identity
)
go

set identity_insert dbo.Test on
go

insert into dbo.Test(ID) select ID from dbo.tmp_Test
go

set identity_insert dbo.Test off
go

drop table dbo.tmp_Test
go

0
在SMSS中,右键单击您的表格->修改。选择您的列->标识规范->是标识->是。

这将删除表并重新创建它。 - Neil Knight

-4

使用SQL可以这样做:

ALTER TABLE <TableName> ADD CONSTRAINT PK_<TableName> PRIMARYKEY(Column)

3
他在询问如何将身份应用于现有列,而不是如何添加主键。 - Albireo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接