好吧,我不怎么解释这个问题,我有两个需要合并并发送到 oledb 目标的 OLE DB 连接,源 oledb 列是:
tbl 客户总数:
RUT_CLIE numeric(18,0),
DV(string(1)), CLI_NOM(string(40)),
CLI_CAT_SUB(string(3)),
CLI_STA(string(5)),
CLI_SUB_STA(string(5)),
**COD_CTR (numeric(18,0)) <- JOIN KEY**,
nom_ejec(string(50)),
nom_suc(string(100)),
nom_suc_gpo(string(100)),
zonal(string(50)),
id_cargo(string(50)),
CLI_GRP_NOM(string(25)),
CANAL(string(50)),
ACTIVO(int),
VINCULADO(int),
VINCULADO_TRX(int),
CTACTE(int),
CLI_CAT(string(5))
tbl 卡特拉 1 1:
cod_cartera (numeric(18,0)) <- JOIN KEY
cargo(string(100)),
nom_suc_gpo(string(100))
目的地:
映射:
我需要将许多列转换为 nvarchar(255),(我认为这是问题所在),但是当我运行程序时,会发生这种情况:
错误信息:
[OLE DB 目标 [5679]] 错误:SSIS 错误代码 DTS_E_OLEDBERROR。发生 OLE DB 错误。错误代码:0x80040E21。OLE DB 记录可用。来源:“Microsoft SQL Server Native Client 10.0” Hresult:0x80040E21 描述:“多步 OLE DB 操作产生错误。检查每个 OLE DB 状态值(如果可用)。没有完成任何工作。”。
[OLE DB 目标 [5679]] 错误:SSIS 错误代码 DTS_E_INDUCEDTRANSFORMFAILUREONERROR。“输入“OLE DB 目标输入”(5692)”失败,因为发生错误代码 0xC020907B,并且“输入“OLE DB 目标输入”(5692)”上的错误行处置指定错误失败。指定组件的指定对象发生错误。在此之前可能会发布错误消息,其中包含有关失败的更多信息。
[SSIS.Pipeline] 错误:SSIS 错误代码 DTS_E_PROCESSINPUTFAILED。在处理输入“OLE DB 目标输入”(5692) 时,组件“OLE DB 目标”(5679) 上的 ProcessInput 方法失败,错误代码为 0xC0209029。已识别的组件从 ProcessInput 方法返回错误。该错误是特定于组件的,但该错误是致命的,将导致数据流任务停止运行。在此之前可能会发布错误消息,其中包含有关失败的更多信息。
[SSIS.Pipeline] 错误:SSIS 错误代码 DTS_E_PROCESSINPUTFAILED。处理输入“排序输入”(4899) 时,组件“排序”(4898) 上的 ProcessInput 方法失败,错误代码为 0xC0047020。已识别的组件从 ProcessInput 方法返回错误。该错误是特定于组件的,但该错误是致命的,将导致数据流任务停止运行。在此之前可能会发布错误消息,其中包含有关失败的更多信息。
警告:
[SSIS.Pipeline] 警告:警告:无法打开全局共享内存以与性能 DLL 进行通信;数据流性能计数器不可用。要解决此问题,请以管理员身份或在系统控制台上运行此软件包。
请帮忙,我现在真的很沮丧和压力,所以我无法更好地解释自己,如果您不明白某些事情,请询问,我会努力使它变得更好。