我经常需要清理并将凌乱的CSV和Excel文件导入我的MS SQL Server 2014(但如果我使用的是Oracle或其他数据库,问题就会一样了。)
我找到了一种方法来与Alteryx一起做这件事。你能帮我理解我是否能用Pentaho Kettle或SSIS做同样的事情?或者,你能推荐另一个ETL软件来解决我的观点吗?
谢谢!
答案 0 :(得分:0)
一个愚蠢的建议。在Excel中,在列表顶部添加一行,该行具有一个公式,该公式创建的文本字符串与列中最长值的长度相同。
这个以数组公式输入的公式可以做到这一点..
=REPT("X",MAX(LEN(A:A)))
您还可以使用更高级的VBA函数创建其他虚拟值以强制SSIS中的数据类型。
我没有使用SSIS或类似的东西,但是在过去我会将一个文件加载到一个表中,其中所有数据都是varchar 1000,所以加载了所有数据,然后使用它们将其处理到主表中按我的要求强制转换或删除数据值的SQL。
这给你终极控制而不是包或驱动程序。我听到这是如何工作的,我感到非常惊讶!