【发布时间】:2017-06-19 18:50:06
【问题描述】:
我正在尝试使用 ssis 包将数据导入 sql server。我有一个名为 description 的列,其中有一个包含 690 个字符的单元格。
我收到截断错误,因为 SSIS 无法确定所需的最大长度。我尝试从 excel 源连接更改输出列属性,但这没有帮助。但是,当我将具有最大长度的单元格移动到第一行时,它工作得很好(因为 ssis 包确定了前 8 行的最大长度)。
因为,我想自动化这个过程,我不想每次都修改 Excel 表。我已阅读有关更改 ssis 读取的行集数量的信息,但无法弄清楚如何去做。
我们将不胜感激任何类型的帮助。
【问题讨论】:
-
我相信您正在寻找数据流中的数据转换步骤。您应该能够将输出列指定为所需大小的字符串(不要忘记更新映射以使用新列)。
-
需要数据转换吗?它以文本/字符串格式出现。它需要 ntext 数据类型,但考虑到 nvarchar,即使我增加了 nvarchar 的字符数,它也无济于事。
-
@JacobH 嘿,所以当我使用数据转换时。它说一个新的错误,说无法检索列描述的长数据。
-
改用 DT_WSTR? (unicode 字符串而不是 ntext)
标签: sql sql-server ssis