2010-04-22 142 views
0

我在SSIS中设置了一个数据流任务。SSIS数据流任务Excel源文件

该源代码来自Excel源而不是SQL DB。

我似乎得到的问题是,该软件包导入空行。

我的数据555200行有数据,但超过90万行导入SSIS包时,进口然而。即使另一行为空,也会导入额外的行。

当我再下载此表到Excel中有数据之间的空行。

有反正我可以避免这种情况吗?

感谢

杰拉德

+0

http://stackoverflow.com/questions/2682824/ssis-dataflow-from-excel-empty-rows – 2010-04-22 11:42:27

回答

0

做的最好的事情。如果可以的话,是将数据导出到平面文件,csv或tab,然后将其读入。问题是即使这些行是空白的,它们也不是真的是空的。所以当你跨越那个ODBC-Excel网桥时,你会将这些行作为空白。

你可能调整生成电子表格,以消除这个问题,或者手动删除行的方式。这些解决方案的问题在于它们不能长期扩展或维护。你也将被困在那个摇摇晃晃的ODBC桥梁中。最好的长期解决方案是避免完全使用ODBC-Excel桥。通过将数据转储到平面文件,您可以完全控制如何读取,验证和解释数据。您不会受到当前充斥着错误并处于“古怪”时代的翻译层的束缚

+0

的可能重复感谢你,是非常有益的 – Gerard 2010-04-22 22:45:55

0

您还可以在数据流任务中的条件拆分组件中添加条件拆分组件源任务和目标任务。在这里,检查somecolumn是否为空或空 - 这是一致的 - 意味着对于每一个有效的行,它有一些数据,并且对于每一个无效行,它是空的或空的。

然后丢弃该条件的输出,将行发送的其余部分到所述目的地。然后您应该只从Excel中获取有效数据的行数。

相关问题