首页 > 解决方案 > 带有单列的平面文件导入被截断到可用数据大小以下

问题描述

我有一个非常简单的 SSIS 包,它从平面文件中导入一列作为每一行的文本流 [DT_TEXT]。然后我有一个 OLE DB 目标(我也尝试过 ADO NET),它将它插入到我的暂存表中。

它似乎工作正常,但只导入了 43,680 个字符,源和目标都是文本数据类型,因此应该有 2,147,483,647 个字符可用。

我不明白这个截断是从哪里来的,如果有人可以帮助它让我发疯,谢谢。

标签: ssis

解决方案


它与 DT_TEXT 无关,但更多与 SSMS 如何限制字符的显示有关。如果您使用 LEN([YourColumn]),您可能会看到您的数据实际上完全存储在您的目标中,但是当您通过 SELECT 查询时,SSMS 不会显示完整的字符集。您可以转到工具 -> 选项 -> 查询结果 -> SQL Server -> 结果到网格以将其扩展到 65535,因此您可能会看到更多字符。以下线程有更多细节。 https://www.sqlservercentral.com/forums/topic/varcharmax-not-storing-all-data


推荐阅读