1. 程式人生 > 其它 >Cause: java.sql.SQLException: Zero date value prohibited

Cause: java.sql.SQLException: Zero date value prohibited

技術標籤:資料庫技術java

使用mybaits XML檔案寫SQL語句或呼叫儲存過程輸出列表中,如果包含date型別的資料:如:

<select id="getList" resultType="com.bjwl.modules.paint.entity.PaintLifeEntity">
        SELECT RECID,FCODE,CONTACT,FADDR,FADMINMAPNM,FLNG,FLAT,FCreateTM
        FROM tsvbase
        <if test="ew.emptyOfWhere==false"
> ${ew.customSqlSegment} </if> <select>

系統報如下錯誤:
org.apache.ibatis.executor.result.ResultMapException: Error attempting to get column ‘FCREATETM’ from result set. Cause: java.sql.SQLException: Zero date value prohibited
原因:FCREATETM為Date型別,資料庫資料為
在這裡插入圖片描述
“0000-00-00”轉換失敗
解決辦法1

:找到application-dev.yml和application-prod.yml檔案,將資料庫連線中的url增加上引數&zeroDateTimeBehavior=convertToNull, 將0000-00-00 00:00:00轉化為null
解決方法2:確保每條記錄日期型別欄位中有正確的資料