sql server 导入平面文件源数据,错误 0xc02020a1错误 0xc020902a 错误 0xc02020c5,返回状态值 4 和状态文本“文本被截断,或者一个或多个字符在目标代码页...

Posted 张某人ER

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql server 导入平面文件源数据,错误 0xc02020a1错误 0xc020902a 错误 0xc02020c5,返回状态值 4 和状态文本“文本被截断,或者一个或多个字符在目标代码页...相关的知识,希望对你有一定的参考价值。

使用sql server 导入平面文件源数据时,报错:错误 0xc02020a1: 错误 0xc020902a: 错误 0xc02020c5;错误 0xc0047022: 返回状态值 4 和状态文本“文本被截断,或者一个或多个字符在目标代码页中没有匹配项。

 

 

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

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

错误 0xc02020c5: 数据流任务 1: 在将列“列 6”(34)转换为列“列 6”(70)时数据转换失败。转换操作返回状态值 4 和状态文本“文本被截断,或者一个或多个字符在目标代码页中没有匹配项。”。
 (SQL Server 导入和导出向导)
 

 

错误 0xc0047022: 数据流任务 1: SSIS 错误代码 DTS_E_PROCESSINPUTFAILED。处理输入“数据转换输入”(63)时,组件“数据转换 0 - 0”(62)的 ProcessInput 方法失败,错误代码为 0xC020902A。标识的这个组件从 ProcessInput 方法返回了一个错误。虽然该错误是此组件特有的,但却是致命的,将导致数据流任务停止运行。可能在此之前已经发出错误消息,提供了有关失败的详细信息。
 (SQL Server 导入和导出向导)

 

 




 

出现这种错误,常常是导入的数据中有一些异常值,(或者说,对于数据库软件来说,是个错误值),出现没法转换,或被截断的报错。

 

一种办法是,找出这个异常值,可当数据量较大时,这个办法不可行。例如,笔者这次导入的数据有160多万条,不能去打开文件去找这个错误值吧。有时因为分配的数据宽度不够(默认是50),增大即可。可当是数据转换问题时,增大也没用,另外,为了一个异常值,将所有的基本类型长度改变,没必要。

 

第二种办法,对于这种少量的数据异常值,忽略它。即当出现异常值时,并不报错退出导入数据过程,而是忽略这个小的异常点。

 

操作步骤:

 

如图,选择要导入的文件

 

选择左侧的高级选项

 


 

然后,将某一列的DataType改为非默认值(当导入出现错误后,再一次重复导入时,才能看到最后一张图所示选项)

 

 

 

 

 

 

点击下一步,3次会看到如下图:

 

 

 

如果刚才发生了截断错误的,将选项选为忽略即可。

以上是关于sql server 导入平面文件源数据,错误 0xc02020a1错误 0xc020902a 错误 0xc02020c5,返回状态值 4 和状态文本“文本被截断,或者一个或多个字符在目标代码页...的主要内容,如果未能解决你的问题,请参考以下文章

导入平面文件并创建报表 sql server

将txt文件内容导入sql server 数据库表中

SQL Server 2005 DTS导入平面数据源时(如txt文档),总是被截断,无法执行的错误解决方案

如何将 UTF-8 平面文件导入 SQL Server 2008 R2?

如何将 xlsx 文件导入 Sql server 2000

使用SSIS从SQL Server 2005中的平面文件导入时如何保留NULL值