SQL2005导入数据的问题?

sonicjam 2008-07-30 07:15:01
为什么我导一个数据包文件名为.txt的文件进SQL2005时老是提示下面的错误,请问各位大侠这是什么问题呢?

正在执行 (错误)
消息
错误 0xc02020a1: 数据流任务: 数据转换失败。列“列 22”的数据转换返回状态值 4 和状态文本“文本被截断,或者一个或多个字符在目标代码页中没有匹配项。”。
(SQL Server 导入和导出向导)

错误 0xc020902a: 数据流任务: “输出列“列 22”(98)”由于发生截断而失败,而且针对“输出列“列 22”(98)”的截断行处理设置指定截断时出错。在指定组件的指定对象上出现截断错误。
(SQL Server 导入和导出向导)

错误 0xc0202092: 数据流任务: 处理文件“C:\Documents and Settings\user\桌面\KHBH\khbh2120_20080730.txt”的数据行 24 时出错。
(SQL Server 导入和导出向导)

错误 0xc0047038: 数据流任务: SSIS 错误代码 DTS_E_PRIMEOUTPUTFAILED。组件“源 - khbh2120_20080730_txt”(1) 的 PrimeOutput 方法返回了错误代码 0xC0202092。管道引擎调用 PrimeOutput() 时该组件返回了一个失败代码。虽然该失败代码只与该组件有关,但这个错误是致命的,管道已停止执行。可能在此之前已经发出错误消息,提供了有关失败的详细信息。
(SQL Server 导入和导出向导)

错误 0xc0047021: 数据流任务: SSIS 错误代码 DTS_E_THREADFAILED。 线程“SourceThread0”已退出,错误代码为 0xC0047038。可能在此之前已经发出错误消息,提供了有关线程退出原因的详细信息。
(SQL Server 导入和导出向导)

错误 0xc0047039: 数据流任务: SSIS 错误代码 DTS_E_THREADCANCELLED。线程“WorkThread0”接收到关闭信号,正在终止。原因是用户请求了关闭,或另一线程中的错误导致该管道关闭。可能在此之前已经发出错误消息,提供了有关取消线程的原因的详细信息。
(SQL Server 导入和导出向导)

错误 0xc0047021: 数据流任务: SSIS 错误代码 DTS_E_THREADFAILED。 线程“WorkThread0”已退出,错误代码为 0xC0047039。可能在此之前已经发出错误消息,提供了有关线程退出原因的详细信息。
(SQL Server 导入和导出向导)



...全文
2451 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
livelymoon 2010-11-15
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 farwy 的回复:]
1 故障分析:
理由很简单,默认的平文件,每个字段的宽度是50,
如果你的平面数据源的字段超过这个,则会出现上面这个错误。

2 解决方案:

也很简单,在数据源的高级里面(也就是文本的高级设置),手工设定每个字段允许的最大宽度就行了.
而不是设置数据库表的这个字段长度。
[/Quote]

正解!我用的SQL2008,数据源的高级里面,别理解错了!是数据源的高级里面!
farwy 2009-07-21
  • 打赏
  • 举报
回复
1 故障分析:
理由很简单,默认的平文件,每个字段的宽度是50,
如果你的平面数据源的字段超过这个,则会出现上面这个错误。

2 解决方案:

也很简单,在数据源的高级里面(也就是文本的高级设置),手工设定每个字段允许的最大宽度就行了.
而不是设置数据库表的这个字段长度。
lsd123 2009-07-21
  • 打赏
  • 举报
回复
我也碰到这个问题,不是长度的问题
microhwang 2008-10-13
  • 打赏
  • 举报
回复
这个不是长度的问题,同样的文件在2000下面就是可以的。需要sp2。
microtan0902 2008-08-22
  • 打赏
  • 举报
回复
你的 sql 2005打补丁了没有?打sp2后再试一下

http://www.crsky.com/soft/7151.html
hyqwan11112 2008-08-01
  • 打赏
  • 举报
回复
应该就是'22列'对应的数据库字段长度不够!
linux_ch 2008-08-01
  • 打赏
  • 举报
回复
llj0209013知道,你可以問他,他是高手
sonicjam 2008-08-01
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 hery2002 的回复:]
数据转换失败。列“列 22”的数据转换返回状态值 4 和状态文本“文本被截断,或者一个或多个字符在目标代码页中没有匹配项。”。
----------------------
字段长度不够?
尝试把字段都设置大点
[/Quote]

我设了呀!!!第22列的设的足够大的了不会不够长呀
bwu851 2008-07-31
  • 打赏
  • 举报
回复
缺省条件下, 对文本文件所有字符列的长度是50. 你需要在文本文件联接的"Advanced"页里把字符的长度改大, 或者你可以用"Suggest Types..."
hery2002 2008-07-30
  • 打赏
  • 举报
回复
数据转换失败。列“列 22”的数据转换返回状态值 4 和状态文本“文本被截断,或者一个或多个字符在目标代码页中没有匹配项。”。
----------------------
字段长度不够?
尝试把字段都设置大点

34,838

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧