问题提出:
使用DTS导入有IDENTITY字段的表时的问题 。
表A有字段ID,为IDENTITY(1,1)类型。
我用DTS导入,如果选择这一列,报错(不能有重复记录 ID列)。
如果不选择,会报错(ID不能为空)。
当然,我的ID同时也是Primary,但如果去掉这个属性,DTS能导入成功,此字段的记录会重复。
解决方法:
启用标志列插入选项,打个勾。
连同标志列一同导入。
应该改为禁用该选项即可。
在DTS任务属性的最后一个标签“选项”里,最下方有一个“Enable Identity Insert”选项,去掉它即可。
其它的一些参考方法:
DBCC CHECKIDENT (表名, RESEED, 记录数) --执行一下这个
insert into tb2(除了ID列的字段) select (对应要导的字段名) from tb1
select identity(int,1,1) as autoID, * into #Tmp from tableName
select min(autoID) as autoID into #Tmp2 from #Tmp group by Name,autoID
select * from #Tmp where autoID in(select autoID from #tmp2)