我有一个 SSIS 项目,用于使用 Kingswaysoft 自动将 CRM 数据拉入 SQL Server 数据库。这些 SSIS 包是自动生成的,所以我对这个问题的解决方案需要与之兼容。
CRM 中联系人上的描述字段是 nvarchar(2000),但是这个 CRM 组织仍然有旧数据,并且其中一些旧联系人记录的描述超过 2000 个字符。当我尝试使用 Kingsway 拉动那些时,我收到此错误:
错误:联系人阶段数据中的 0xC002F304,导出联系人数据 [2]:发生错误并显示以下错误消息:“‘描述’字段(或其相关字段之一)的输入值不适合输出缓冲区,请考虑增加输出列的 Length 属性或将其数据类型更改为可以容纳更多数据的类型,例如 ntext (DT_NTEXT)。可以使用组件的高级编辑器窗口来完成此更改。”。
这是有道理的,因为我拉的列比元数据中指定的长,但问题是我想忽略这个错误,截断列,并继续加载数据。显然我可以将列设置为 DT_NTEXT 而不必担心,但由于这些包是自动生成的,我无法事先知道哪些列有旧数据,哪些没有,所以我不知道哪个应该是 DT_NTEXT。
那么有没有办法让 Kingswaysoft 截断比元数据中指定的长度更长的输入数据?