将现有列更改为标识

时间:2011-03-02 11:53:03

标签: asp.net sql sql-server

  

可能重复:
  How to change programmatically non-identity column to identity one?

我想将列设置为标识 因为我已经在表格中创建了这个列。

我需要什么语法? ALTER ...

4 个答案:

答案 0 :(得分:2)

您无法将标识添加到现有列,您必须创建新列。

答案 1 :(得分:1)

使用表格测试

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

答案 2 :(得分:0)

在SMSS中右键单击您的表格 - >修改。选择您的专栏 - >身份规范 - >是身份 - >是。

答案 3 :(得分:-4)

使用SQL可以执行以下操作:

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