我有一个SSIS包(SQL Server 2008)。我有一个Excel源文件(XLS 97-2003),我想先导入一个SQL表,将所有内容存储为字符串(数字和日期存储为例如rae)。然后,我从这个表中获取数据到其他表格。SSIS从Excel到SQL Server:数据类型长度
Excel的源被配置是这样的:在所述第一步骤中发生Provider=Microsoft.Jet.OLEDB.4.0;Data Source=*********;Extended Properties="EXCEL 8.0;HDR=YES;IMEX=1";
我的问题。让我解释一下: 我的一些列MIGHT包含大文本。我确切知道这些列是什么。
的问题是:
- 一方面,如果配置了源列被ntext和如果有长文本(> 255字符),然后确定。如果没有数据是这些列或短文本(< 255 char),或者在前8行后面有长文本,我会收到一个错误消息(Excel源代码中的红色框...不会再继续执行)。另一方面,如果源列被配置为(wstr,255),并且如果没有数据或短数据(< 255 char),则一切正常。如果有大文本,我会得到一个错误(这似乎是合乎逻辑的)。
我想配置我的软件包,以便在数据源包含比预期更小的数据时不会出错。在我看来,这是相当合理的,但我无法实现...
任何帮助将不胜感激。
坦克的想法!我想我会坚持第一个建议 – Thibault 2015-02-23 21:40:53
该文件顶部的虚拟行是一个工作解决方案。最重要的是,它保证我的其他列(即日期类型)也转换为文本,这正是我最初想要的。 – Thibault 2015-02-26 08:55:11