如果之前设置好主键,但是没有设置主键为自动递增时,想要修改主键为自增同时又想保留原数据,先将修改方法整理如下:
环境:sqlServer2008
存在表Employee,其中id为主键
1.复制表结构:重新建表Employee_3,包含除id字段意外的所有字段
2.执行:alert table Employee_3 add id int identity(1,1)
3.打开自增插入字段set identity_insert Employee_t on
4.执行
insert into Employee_3(id,EmployeeCode,Name,EmployeeAccount,ActualName,IdCardNum,Sex,BirthDay,
NativePlace,Married,DocumentState,JoinTime,Center_Id,PositionDef_Id,PositionNumber,
Phone,MobilePhone,Email,FAX,DismissReason,BankName,BankBranch,AccountName,BankAccount,
Active,DismissDate,Remark,EmpType,EmpCode2,Reserve5,Reserve6,Reserve7,Reserve8,
Reserve9,Reserve10,BankName2,AccountName2,BankAccount2,JobTitleLevel,JobTitleConfirmTime,Nationality,
ConfirmDate,FamilyAddr,IdCardAddr,ContractTo,TrainingPeriod,ServiceYears,ResDocNum,
College,Major,MinorMajor,Degree,GraduateDate,JobTitle,ContractFrom,Reserve1,Reserve2,
Reserve3,Reserve4)select id,EmployeeCode,Name,EmployeeAcc

在SQLServer2008环境中,若需将已存在的非自增主键id转换为自增,可以采取以下步骤:1) 复制表结构创建新表;2) 在新表中添加id为主键且设置为自增;3) 开启自增插入;4) 使用指定字段的INSERT语句将原表数据插入新表;5) 关闭自增插入。此方法能保留原有数据顺序。
最低0.47元/天 解锁文章
495

被折叠的 条评论
为什么被折叠?



