我收到錯誤下面的代碼SQL Server 2008中:ALTER TABLE查詢
ALTER TABLE ADM_Roles ALTER COLUMN RoleID int IDENTITY (1, 1)
不正確的語法關鍵字IDENTITY
附近。
我收到錯誤下面的代碼SQL Server 2008中:ALTER TABLE查詢
ALTER TABLE ADM_Roles ALTER COLUMN RoleID int IDENTITY (1, 1)
不正確的語法關鍵字IDENTITY
附近。
您不能改變現有的列到IDENTITY
列 - 你將需要添加具有同一性標記新列:
ALTER TABLE dbo.ADM_Roles
ADD NewRoleID INT IDENTITY (1, 1)
如果需要,以後可以降老列和新列重命名爲舊名:
ALTER TABLE dbo.ADM_Roles DROP COLUMN RoleID
EXEC sp_rename @objName = 'dbo.ADM_Roles.NewRoleID',
@newName = 'RoleID',
@objType = 'COLUMN'
從MSDN
You can't alter the existing columns for identity.
你有2種選擇,
創建標識新表&刪除現有的表
創建身份&刪除現有列,但 新列當這些欄目有任何約束/關係時要格外小心。
實施例的方法:
標識列將舉行數
的序列Alter Table Names Add Id_new Int Identity(1,1)
Go
Alter Table Names Drop Column ID
Go
Exec sp_rename 'Names.Id_new', 'ID','Column'
必須刪除單詞 「INT」。
ALTER TABLE ADM_Roles ALTER COLUMN RoleId IDENTITY (1, 1);
Tamnbien puede hacerlo一個traves德爾diagrama德羣德DATOS,modificas拉斯propiedades德拉塔布拉Ÿagregar拉columna闕deseas闕海 「身份」 EN LA columna 「標識列」
ESO我arreglo el problema de agregar identity a una columna Existente。
[您是否支持分區?](http://stackoverflow.com/questions/6084572/how-to-set-auto-increment-after-creating-a-table-without-any-data -Loss/6086661#6086661) –