在用微软的SSIS操作ORACLE 数据源的时候碰到以下报错信息:
[ADO NET Destination [13455]] 错误: 数据插入期间出现异常,从提供程序返回的消息为:无法将类型为“System.Decimal”的对象强制转换为类型“System.Char[]”。
SQL语句:
select A FROM TABLE WHERE B ....
字段A为NUMBER类型,但是数据库中有空值,所以报错,只是报错信息不标准
SQL改为
SELECT
case when A is not null then A ELSE 0 END AS A
FROM TABLE B WHERE ...
改完就不报错了,说白了就是加个判断。