我正在将Access数据库转换为SQL Server 2005.我已经使用SSMA成功迁移了数据和原始模式,现在正在对数据库进行规范化,这需要我添加一些唯一标识符。
我们之前使用的一些列是使用自动编号数据类型创建的,这很好。但是,我需要为其他数据创建无意义但唯一的标识符,因此我使用带有Identity Specification属性的int数据类型。我在'101'播种,以使这些数据保持在当前存在的已有唯一标识符的数据的范围内,因为它们最终将位于同一个表中。
我的问题是,当我使用种子值为“101”且增量为“1”的身份规范创建一个新的int时,数字从“1”开始。我试图重新开始:
USE dbMyDatabase
DBCC checkident(tblMyTable, reseed, 101)
无济于事。任何建议将不胜感激。提前谢谢!
答案 0 :(得分:1)
解决方案是手动使用SQL查询创建列。通过“新列...”选项添加它每次都会产生不正确的结果。现在我用
添加了它USE dbMyDatabase
ALTER TABLE tblMyTable
ADD fldID INT IDENTITY(101,1)
它运作得很好。