问题描述:在由SQLServer向Oracle导入数据时,报出如下错误,第19个字段需要一个Boolean类型字段
原数据内容为null和N,使用Kettle自动导入Oracle数据库中自动转变为char(1)类型,造成数据类型不匹配,但由于Oracle并不含有Boolean类型,所以这里采用一种折中的办法,将SQL server表输入时的null、N数据在输出时改为0、1数字类型,这样就可以在Oracle中进行保存。
-- 原查询语句
SELECT booleandata
FROM ExampleTable
-- 修改输出类型
SELECT CASE WHEN booleandata is null THEN 0 ELSE 1 END booleandata
FROM ExampleTable