2014-02-13 67 views
-1

我有一个SSIS包来从Oracle导入数据到SQL Server。 源Oracle表是SSIS奇怪的行为截断错误

的EmpID [INTEGER],EmpTitle [VARCHAR2(20)],EmpName(VARCHAR2(50))
1001,MR,KING
1002,REVEREND,FORD

目标表

ENO(INT),ETitle(VARCHAR(4)),ENAME(VARCHAR(50))

在i创建的包它显示截断警告作为目的地标题字段大小只有6.

当我第一运行它投掷约截断(尺寸为20至大小6)一个错误的包,然后我试图将错误行重定向到一个临时表来分析数据,但没有完成它并重新运行软件包,令人惊讶的是它没有再显示截断错误并且将数据移动到目的地(标题的前6个字符)。

我肯定我失去了一些东西,我可以忽略这个问题,但我想知道在SSIS截断是如何工作的,我们可以直接SSIS忽略这个错误或引发错误。

我看着这个话题无数的链接,但这个怪异的行为没有人提到。请有人对此有更多的了解。

许多感谢 约翰

回答

0

的截断误差是由于在目的地不正确的列的宽度。请增加与源相同或更多的列宽。它应该解决问题。

+0

什么,我试图了解是如何处理截断问题的情况下,它是不可能增加字段的大小。将有一个选项可以告诉SSIS要么截断或提出错误。 –

+0

如果目标字段大小比source..It小会通过错误或者你可以提高错误或邮件发送给了错误表获得进一步的分析.. – Maverick

+0

你好请告诉我如何更改设置,以便抛出错误,目前它不会抛出错误,即使目标大小较小。 –