【发布时间】:2013-07-19 06:03:21
【问题描述】:
当我尝试将 Excel 文档导入到我的服务器上运行的 Microsoft SQL Server 时,我收到一个截断错误(复制并粘贴在下面)。我不完全理解这一点,但希望得到一些帮助。这是我收到的错误信息以及底部的更多信息:
- 执行(错误)消息错误 0xc020901c:数据流任务 1:输出列“PSUNotes”(42)在输出“Excel 源输出”(9)。返回的列状态是:“文本是 截断或一个或多个字符在目标代码中不匹配 页面。
(SQL Server 导入和导出向导)
错误 0xc020902a:数据流任务 1:“输出列“PSUNotes” (42)" 由于发生截断而失败,并且截断行 “输出列“PSUNotes”(42)”上的处置指定失败 截断。指定对象发生截断错误 指定的组件。
(SQL Server 导入和导出向导)
错误 0xc0047038:数据流任务 1:SSIS 错误代码 DTS_E_PRIMEOUTPUTFAILED。组件“Source”上的 PrimeOutput 方法 - tblClient" (1) 返回错误代码 0xC020902A。当管道引擎调用 PrimeOutput() 时,组件返回失败代码。 故障代码的含义由组件定义,但 错误是致命的,并且管道停止执行。可能有错误 在此之前发布的消息,其中包含有关失败的更多信息。
(SQL Server 导入和导出向导)
我正在导入的 Excel 表称为“tblClients”,而“PSUNotes”列是发生截断错误的位置。我认为“PSUNotes”中的“(42)”表示错误是 Excel 文件中的“PSUNotes”列和第 42 行,但经过查看,该行的长度不超过 30 个字符。其他低于和高于其中的数据量更大。所以我不知道发生了什么。
【问题讨论】:
-
您要导入到现有表吗?这个错误看起来目的地太小了。如果是这样,请尝试导入到全新的表。请发布您使用的 SQL Server 和 Excel 版本。
-
42 只是告诉您由 SSIS 分配给该列的内部列 ID。您无法使用向导检测是哪一行导致错误。
标签: sql-server excel import truncation