SSIS 錯誤碼 DTS_E_OLEDBERROR。發生 OLE DB 錯誤。錯誤碼: 0x80040E21 备注

本文介绍了解决SSIS导出数据库时遇到的DTS_E_OLEDBERROR错误的具体步骤。错误通常由源列数据类型(如nvarchar(max))与目标列不匹配引起。通过调整字段类型为nvarchar(50),成功解决了该问题。

    今天在做数据库导出的时候,遇到这样的一个错误提示  

   SSIS 錯誤碼 DTS_E_OLEDBERROR。發生 OLE DB 錯誤。錯誤碼: 0x80040E21 备注

  我是把一个以前的老库数据,导入到新建立的新库表,这其中会有一些字段的长度不同,或是有一些没有用的字段,就不用了.可是出现这种情况还是第一次,上网查了一下,MSDN上给出的解释是

  源列的数据类型是类似 Text一类的无长度限制的文本,而目标库的类型是varchar一类的有长度限制的文本.

  这种情况下,sql server2005(2000没试不知道会怎么样)会直接认为这是错的.

  这主要还是老库表中有一个字段设置的是nvarchar(max)所引起的.而这个字段本身就没有这么多值,所以我把这个字段类型改了一下.变成nvarchar(50).就可以导了.

  

- 正在复制到 [dbo].[YB_JZK_YYHC] (Error) Messages 错误 0xc0202009: 数据流任务 1: SSIS 错误代码 DTS_E_OLEDBERROR。出现 OLE DB 错误错误代码: 0x80004005。 已获得 OLE DB 记录。源:“Microsoft SQL Server Native Client 11.0” Hresult: 0x80004005 说明:“链接服务器 '(null)' 的 OLE DB 访问接口 'STREAM' 返回了对列 '[!BulkInsert].GG' 无效的数据。”。 (SQL Server 导入和导出向导) 错误 0xc0209029: 数据流任务 1: SSIS 错误代码 DTS_E_INDUCEDTRANSFORMFAILUREONERROR。“目标 - YB_JZK_YYHC.输入[Destination Input]”失败,错误代码为 0xC020907B,而且针对“目标 - YB_JZK_YYHC.输入[Destination Input]”的错误行处理设置指定一旦出错就失败。在指定组件的指定对象上出错。可能在此之前已经发出错误消息,提供了有关失败的详细信息。 (SQL Server 导入和导出向导) 错误 0xc0047022: 数据流任务 1: SSIS 错误代码 DTS_E_PROCESSINPUTFAILED。处理输入“Destination Input”(87)时,组件“目标 - YB_JZK_YYHC”(74)的 ProcessInput 方法失败,错误代码为 0xC0209029。标识的这个组件从 ProcessInput 方法返回了一个错误。虽然该错误是此组件特有的,但却是致命的,将导致数据流任务停止运行。可能在此之前已经发出错误消息,提供了有关失败的详细信息。 (SQL Server 导入和导出向导) 错误 0xc02020c4: 数据流任务 1: 无法向数据流任务缓冲区添加行,错误代码为 0xC0047020。 (SQL Server 导入和导出向导) 错误 0xc0047038: 数据流任务 1: SSIS 错误代码 DTS_E_PRIMEOUTPUTFAILED。源 - YB_JZK_YYHC(医用耗材+体外试剂+血糖试纸)20251010_txt 的 PrimeOutput 方法返回了错误代码 0xC02020C4。管道引擎调用 PrimeOutput() 时该组件返回了一个失败代码。虽然该失败代码只与该组件有关,但这个错误是致命的,管道已停止执行。可能在此之前已经发出错误消息,提供了有关失败的详细信息。 (SQL Server 导入和导出向导)
最新发布
11-07
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值