1. 程式人生 > >[技術分享]20171129_mybatis _ ORA-01830: 日期格式圖片在轉換整個輸入字符串之前結束

[技術分享]20171129_mybatis _ ORA-01830: 日期格式圖片在轉換整個輸入字符串之前結束

color tty myba var state pre spa sele strong

最近在做項目的時候遇到了ORA-01830的問題,

問題的解決辦法是: 使用substr對日期進行一個截取

<select id="findActiveBlogWithTitleLike" resultType="Blog">
  SELECT * FROM BLOG 
  WHERE trim(state) = ‘ACTIVE’ 
  <if test="date!= null">
    AND substr(date,1,10) >=to_date(‘20171129‘,‘yyyyMMdd‘)
  </if>
</select>

有人會問trim是啥意思?

這就不得不說說我的數據庫的設計,因為date這個字段是一個char類型,沒有設計成varchar2類型,

設計成char類型有一些不好的地方:比如說在plsql中執行打印到控制臺上的sql,有結果,可是在程序中就不能返回對應數據。這個時候要trim一下在<where></where>標簽中char類型的字段,才能將數據返回。

[技術分享]20171129_mybatis _ ORA-01830: 日期格式圖片在轉換整個輸入字符串之前結束