1. 程式人生 > >Mybatis 插入date型別報錯解決方案

Mybatis 插入date型別報錯解決方案

Mybatis 插入 資料庫是為了防止插入空時報錯, Mybatis 提供了一套機制,只要給定插入的欄位的型別,如果為空,則它會自動處理為相應型別的預設值:

  1. #{ordercd,jdbcType=VARCHAR}  

我們都知道,Date型別是精確到時分秒的, 如果需要精確到秒以後,則需要使用 TIMESTAMP 型別

如果資料庫欄位型別為TIMESTAMP 則  #{operateTime,jdbcType=TIMESTAMP} 這樣寫是沒有問題的。

而如果資料庫欄位型別為 Date, POJO類屬性也是Date, 這時如果使用 #{operateTime,jdbcType=Date},也許插入的資料 只精確到天,時分秒都為0.

解決方法寫成: #{operateTime,jdbcType=TIMESTAMP} (資料庫和POJO還是Date型別)