导入Excel表格到SQL Server,跳过主键违规

问题描述:

我想将一个excel文件导入SQL服务器中的表格。该表有3或4列组合在一起构成主键。我希望能够随时运行导入,并且如果与主键存在冲突,只需简单地不导入该行,但继续导入所有其他行。导入Excel表格到SQL Server,跳过主键违规

我创建了一个* .dtsx文件,它可以正常导入,但在找到重复键时就会死亡。有没有办法告诉* .dtsx文件继续,如果它发现重复,而不只是死?我尝试打开* .dtsx文件,但没有太多选项,当我右键单击* .dtsx文件并选择编辑时,Visual Studio打开并显示编辑* .dtsx文件的某种方式,但我根本不熟悉它。任何指导非常感谢!

在OleDBDestination组件上有一个“检查约束”复选框,它被用来忽略像PK这样的约束,但我不认为它会解决你的问题。

要做的理想事情是在源和目标组件之间添加一个查找组件,以检查该行是否已经存在于数据库中,并且只在该组件不存在时才插入。

我知道你说你不知道SSIS,但这是你可能必须采取的方法。创建\编辑一个像这样的简单包是很困难的。 Here就是论坛上的一个例子

+0

谢谢@Diego,你说的对,SSIS - > Lookup Component结果恰到好处。他们有一个强大的功能,提供2个输出:匹配的记录和无与伦比的记录。我所要做的只是稍微配置一下,然后将不匹配的记录传送到我的目的地。安静简单,感谢您的帮助! – russds 2012-04-27 20:55:18

+0

很高兴help.please投票,如果你喜欢的答案:) – Diego 2012-04-28 12:12:03