在过去的几天里,我厌倦了使用SSIS包来配置包含不同类型数据的Excel源代码。我已经为所有列配置了unicode(DT_WSTR),但是加载它们时会隐式转换为float。我可以在数据查看器中看到它们。某些数字字段会发生这种情况。数字列中的数据如下所示。
1
0.5
1
0.5
在我的知识中,我尝试了所有方法。添加IMEX=1
和TypeGuessRows=0
和ValidateExternalMetadata= False
等。
您必须将IMEX=1
添加到连接字符串,并且您可以尝试在列标题之后添加包含字符串值的虚拟行,例如:
Column1 Column2 Column3
aaa aaa aaa
1 1 0.5
2 0.5 1
或者只选择第一行不包含列标题,并跳过导入过程中的第一行(可以通过将HDR=NO
添加到连接字符串来完成)