我已经创建了表,并想要更改该表。我想添加一个主键和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/