今天使用kettle從mysql導數到oracle,發現只導了7行后,數據傳輸就終止了,查看日志信息,報錯如下:
報:Couldn't get row from result set問題。
發現從這行開始這個時間字段除了正常的時間數據以外還有NULL值,難道這類的值引起的錯誤,在查詢了相關資料后,才知道jdbc(默認行為)認為null或'0000-00-00'這樣的日期時間值是無效的。如果想避開這個問題,需要編輯jdbc的連接屬性,添加如下屬性值:
zeroDateTimeBehavior=convertToNull
設置之后導數成功進行。
所以,設計生產系統中的相關表時,默認值最好不要使用'0000-00-00'或null這樣的值。


