有一个奇怪的问题。
我创建了一个SSIS包,它通过外部数据库和SQL Server 2008之间的ODBC连接导入数据。
数据流有一个源查询(简单:从表中选择列)。
数据转换为字符串[DT_STR]
目标:具有相同结构的SQL Server表。
如果我执行任务,则输入11,000多行。没有错误。
但是,数据全部是空格和NULLS,除了日期字段是正确的(我可以告诉它它正在尝试输入正确的数据)。
如果我将源查询中任何单列的错误输出更改为重定向,则会正确填充所有字段。如果我将其设置为忽略或失败,我们就会得到空白。
我添加了一个平面文件目标,并连接了Redirect行,没有任何内容写入。
我们有几个像这样的包,我从来没有遇到过这个问题。
我还重新创建了整个包,同样的事情发生了。
有什么想法吗?
有8个数据流任务在此包中为不同的数据库执行相同的操作。如果,我无法弄明白,是否有一种将错误输出设置为无处的好方法?
更新2/26/18: 我添加了数据查看器,在源的第一个查看器上,如果源上的错误输出未设置为重定向行,则会获得空白/ NULLS。如果我设置为Redirect,则Viewer会显示数据。注意:我可以在错误列或截断列上将任何列错误输出设置为重定向。只要选择了一个,来自Source的数据就会通过。
由于这是源和数据转换之间的查看器,这是不是意味着问题出在源查询而不是数据转换?
我在此处设置为重定向: