在 sql server 中 bit 可以 为 1,0,null 在kettle spoon转换到 oracle 中 隐射的 类型 不允许 为空 ,
这个时候就会报错 : 列类型 错误 导致 抽取数据的转换中断
处理方式 : 将 原系统中 那些 空的 转换为 0 即可 (布尔型 嘛 非 true 即 false,这么做感觉合理)
处理SQL :
SELECT [DocId]
,[DocDcsId]
,[DocNo]
,[DocTitle]
,[DocKeyWord]
,[DocDate]
,[DocPosition]
,[DocIEmpName]
,[DocIDate]
,[DocMEmpName]
,[DocMDate]
,[DocFromId]
,[DocFrom]
,[DocFlaId]
,[Nf_0001]
,[Nf_0002]
,[Nf_0003]
,[Nf_0004]
,[Nf_0005]
,[Nf_0006]
,[Nf_0007]
,[Nf_0008]
,[Nf_0009]
,[Nf_0010]
,[Nf_0011]
,[Nf_0012]
,[Nf_0013]
,[Nf_0014]
,[Nf_0015]
,[Nf_0016]
,[Nf_0017]
,[Nf_0018]
,[Nf_0019]
,[Nf_0020]
,[Nf_0021]
,[DocBorrowEmpName]
,[DocBorrowDate]
,[DocBorrowYDate]
,[DocBorrowRDate]
,[DocHandoverEmpName]
,[DocHandoverDate]
,[DocReceiveEmpName]
,DocIsPigeonhole=case
when [DocIsPigeonhole]=1 then '1'
else '0'
end
,[DocRelateFromId]
FROM [govpm_backup_2].[dbo].[Tpj_Document]