我已经创建了表,并想要更改该表。我想添加一个主键和identity(1,1)

我可以应用主键,但是应用身份会出错。缺少什么吗?

ALTER TABLE MyTable ADD PRIMARY KEY (Id)

如何使用主键添加身份?

最佳答案

您不能更改数据库中现有列的定义来添加IDENTITY属性(也不能删除它)。您必须使用IDENTITY属性创建一个新列:

ALTER TABLE MyTable ADD NewID int IDENTITY(1,1) not null

不幸的是,您随后无法将旧的ID值分配给该新列。如果要分配ID值,然后让IDENTITY接管,最好创建具有​​所需结构的新表,然后从旧表中导入数据(可以使用 IDENTITY_INSERT 将值分配给IDENTITY柱子)。

然后,如果需要,您将删除旧表并重命名新表。

关于sql-server-2008 - 更改表列的主键和标识,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11897007/

10-13 05:25