简体   繁体   中英

SSIS Transformation - from SQL Server to AS400

We are trying to transfer data from Microsoft SQL Server to an AS400 system. If OLE DB destination component is used (with IBM OLE DB Drivers), data get successfully transferred from SQL Server to AS400.

Since OLE DB takes more time to transfer data, we decided to modify our destination to use ADO.NET. If we use ADO.NET Destination component with IBM .NET drivers, SSIS throws a generic data conversion error. Our package is very simple too, which has source and destination only.

Again, OLE DB destination is working fine, but with the same input using ADO.NET destination we are receiving an error.

Detailed error msg:
[SSIS.Pipeline] Error: SSIS Error Code DTS_E_PROCESSINPUTFAILED.  
The ProcessInput method on component "DEST - FACT BILL" (1698) failed with error code 0xC020844B 
while processing input "ADO NET Destination Input" (1701). 
The identified component returned an error from the ProcessInput method. The error is specific to the component, 
but the error is fatal and will cause the Data Flow task to stop running.  
There may be error messages posted before this with more information about the failure.


[DEST - FACT BILL [1698]] Error: An exception has occurred during data insertion, 
the message returned from the provider is: SQL0189: Coded Character Set Identifier 37 not valid.
Cause . . . . . :   Coded Character Set Identifier (CCSID) 37 is not valid for one of the following reasons: -- 
The CCSID is not EBCDIC. -- The CCSID is not supported by the system. -- The CCSID is not valid for the data type. -- 
If the CCSID is specified for graphic data, then the CCSID must be a DBCS CCSID. -- 
If the CCSID is specified for UCS-2 or UTF-16 data, then the CCSID must be a UCS-2 or UTF-16 CCSID. -- 
If the CCSID is specified for CLOB, DBCLOB or DATALINK data, then the CCSID must not be 65535. -- 
If there are multiple DataLink columns with FILE LINK CONTROL, they must all have the same CCSID. -- 
The NORMALIZED clause can only be specified for a UTF-8 or UTF-16 CCSID. Recovery  . . . :   
Ensure that all CCSID values in the statement are supported by the system and are valid for the data type. 
For a list of valid CCSID values, refer to the DB2 UDB for iSeries SQL Reference topic in the Information Center, 
http://www.ibm.com/eserver/iseries/infocenter.

Please let me know if someone has seen this error before and how can I resolve this?

Why do you say that OLEDB takes more time? I use those components exclusively in my ETL processes with very good results.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM