我有SQL Server 2008中的表。它有empId,它是类型的int。现在不是身份。我想编写查询(以便我可以维护DB中的更改记录)以使此列成为标识列。该表目前没有数据。
答案 0 :(得分:3)
可以做但不容易。根据{{3}},如果您通过SSMS执行此操作,然后生成基本上的脚本:
如果此表中没有任何数据,那么您可能最好通过SSMS执行此操作(步骤在我链接到的文章中提供)。你想用SQL做这个吗?
<强>更新强>
我正在阅读其他用户之前发布的this article,并发现这似乎比上述方法更容易:
ALTER TABLE SOURCE_TB ADD ID_II INT IDENTITY(1,1)
ALTER TABLE SOURCE_TB DROP COLUMN ID
EXEC sp_rename 'SOURCE_TB.ID_II' ,'ID','COLUMN'
但同样,通过SSMS做这件事可能更有意义。很高兴知道......
答案 1 :(得分:1)
您没有数据,因此请将表脚本删除并重新创建。将字段更改为Employeeid int identity(1,1)不为null。然后重新创建表格。没有大惊小怪。