首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

SQL2008数据导出出错!请各位帮忙瞧瞧,多谢

2013-02-17 
SQL2008数据导出出错!请各位帮忙瞧瞧,谢谢!为什么会这样呢?[解决办法]违反了 PRIMARY KEY 约束 PK_SF_ADC

SQL2008数据导出出错!请各位帮忙瞧瞧,谢谢!


为什么会这样呢?
[解决办法]
违反了 PRIMARY KEY 约束 'PK_SF_ADClass'。不能在对象 'dbo.SF_ADClass' 中插入重复键

这个重复有两个可能
1、原表就有重复,但是原表没有约束
2、虽然原表没有重复,但是目的表数据与原表数据有重复

[解决办法]
请先使用语句
若是单一主键
select * from dbo.SF_ADClass as t1
where exists
(
select 1 from dbo.SF_ADClass AS t2
where t2.PKCol=t1.PKCol
group PKCol
    having COUNT(PKCol)>1
)
若是复合主键
select * from dbo.SF_ADClass as t1
where exists
(
select 1 from dbo.SF_ADClass AS t2
where  t2.PKCol1=t1.PKCol1 and t2.PKCol2=t1.PKCol2
    group PKCol1,PKCol12
    having COUNT(PKCol1+PKCol12)>1
)
找出重复的主键,干掉或update掉重复的部分
然后再导入就性。
导致原因正如3L所说

热点排行
Bad Request.