发布网友 发布时间:2022-04-15 00:16
共2个回答
懂视网 时间:2022-04-15 04:37
SQL Server 2005,2012 DTS 导入 平面 数据 转自http://www.cnblogs.com/wenanry/archive/2009/12/11/1621822.html 1 典型的错误信息如下: 消息 * 错误 0xc02020a1: 数据 流任务: 数据 转换失败。列“列 2”的 数据 转换返回状态值 4 和状态文本“文本被截断
SQL Server 2005,2012 DTS导入平面数据
转自http://www.cnblogs.com/wenanry/archive/2009/12/11/1621822.html
1 典型的错误信息如下:
消息
* 错误 0xc02020a1: 数据流任务: 数据转换失败。列“列 2”的数据转换返回状态值 4 和状态文本“文本被截断,或者一个或多个字符在目标代码页中没有匹配项。”。
(SQL Server 导入和导出向导)
* 错误 0xc020902a: 数据流任务: “输出列“列 2”(18)”由于发生截断而失败,而且针对“输出列“列 2”(18)”的截断行处理设置指定截断时出错。在指定组件的指定对象上出现截断错误。
(SQL Server 导入和导出向导)
* 错误 0xc0047038: 数据流任务: SSIS 错误代码 DTS_E_PRIMEOUTPUTFAILED。组件“源 - 11_txt”(1) 的 PrimeOutput 方法返回了错误代码 0xC0202092。管道引擎调用 PrimeOutput() 时该组件返回了一个失败代码。虽然该失败代码只与该组件有关,但这个错误是致命的,管道已停止执行。可能在此之前已经发出错误消息,提供了有关失败的详细信息。
(SQL Server 导入和导出向导)
* 错误 0xc0047021: 数据流任务: SSIS 错误代码 DTS_E_THREADFAILED。 线程“SourceThread0”已退出,错误代码为 0xC0047038。可能在此之前已经发出错误消息,提供了有关线程退出原因的详细信息。
(SQL Server 导入和导出向导)
* 错误 0xc0047039: 数据流任务: SSIS 错误代码 DTS_E_THREADCANCELLED。线程“WorkThread0”接收到关闭信号,正在终止。原因是用户请求了关闭,或另一线程中的错误导致该管道关闭。可能在此之前已经发出错误消息,提供了有关取消线程的原因的详细信息。
(SQL Server 导入和导出向导)
2 故障分析:
理由很简单,默认的平文件,每个字段的宽度是50,
如果你的平面数据源的字段超过这个,则会出现上面这个错误。
3 解决方案
也很简单,在高级里面,手工设定每个字段允许的最大宽度就行了,截图如下:
热心网友 时间:2022-04-15 01:45
高版本的数据库可以兼容低版本的,如果你2005能停止的话,你可以先找到2005的数据库文件的位置(也就是mdf和ldf,然后在控制面板,管理工具服务里停掉2005的sql server服务),把mdf和ldf复制到2012的机器里,然后在2012的管理器里附加数据库就行了,或者也可以在2005中右键备份数据,在2012中还原。或者也可以用2005的管理器生成脚本(包括所有的对象,记得选中生成数据),在2012中创建数据库,再执行脚本。