1. 程式人生 > >Incorrect datetime value: '' for column 'ordertime' at row 1

Incorrect datetime value: '' for column 'ordertime' at row 1

關於:

org.springframework.dao.DataIntegrityViolationException: could not insert:

1、含有可能是欄位在對應的時候出錯了,所以建議你檢查你的欄位與資料庫欄位的對應,特別是型別的對應。

很可能是你的javabean檔案(M層),沒有生成CLASS檔案(任何java語言只有通過編譯生成位元組碼才能執行包括被其他的程式呼叫,在這裡是被jsp<V層>呼叫)然後正確的放入規定的WEB—INF/classes資料夾下。(注意:如果引入包的話在usebean中一定記得指出包名,如:包名.類名)。
解決方法:將編譯成功的CLASS檔案放入指定的資料夾下(若引入包則放在包裡)。

到這裡應該你的表單輸入能夠完成資料的處理證明已經能夠成功的和你的javaBean互動,你已經成功了一半。(如果你實現的是使用者登入驗證,你可以在你的JSP中通過選擇(IF)一個在Bean檔案中方法返回的使用者名稱和密碼錯誤(false)的資訊判斷,在瀏覽器中顯示出來。注意:正確的使用者驗證只能在servle(控制層)中確定它的分支流向。)

2、頁面報錯誤:

HTTP Status 500 -

type Exception report

message 

description The server encountered an internal error () that prevented it from fulfilling this request.

exception 

org.springframework.dao.DataIntegrityViolationException: could not insert: [cn.lionking.shop.order.Order]; SQL [insert into orders (total, ordertime, state, addr, phone, name, uid) values (?, ?, ?, ?, ?, ?, ?)]; nested exception is org.hibernate.exception.DataException: could not insert: [cn.lionking.shop.order.Order]

org.springframework.orm.hibernate3.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:648)

org.springframework.orm.hibernate3.HibernateAccessor.convertHibernateAccessException(HibernateAccessor.java:412)

org.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:411)

org.springframework.orm.hibernate3.HibernateTemplate.executeWithNativeSession(HibernateTemplate.java:374)

org.springframework.orm.hibernate3.HibernateTemplate.save(HibernateTemplate.java:683)

控制檯報:

Incorrect datetime value: '' for column 'ordertime' at row 1

我在寫一個購物商城的訂單表時,在新增ordertime項時,出現這個錯誤。

開始檢查了orders表的建立過程中的,沒有發現錯誤,Order.java的欄位也與資料庫中的一致。可是一直出現無法inserted order表,後來明白是mysql-connector-java的JAR包的問題。我的mysql資料庫是5.7版本,我的專案匯入資料庫包mysql-connector-java-5.0.4-bin.jar

換成mysql-connector-java-5.1.34-bin.jar問題解決。

趕緊去試一下吧!!!