JAVA連接MySQL數據庫,在操作各項值均為為0(或者有0不正確的數據??)的timestamp等(日期為0000-00-00。。。。)類(lèi)型時(shí)不能正確處理,而是默認拋出一個(gè)異常,比如所見(jiàn)的:java.sql.SQLException: Cannot convert value '0000-00-00 00:00:00' from column XX to TIMESTAMP。
舉個(gè)實(shí)際的栗子,你的方法中要傳入來(lái)自頁(yè)面的日期參數值,
按照正常的做法,比如日期值為2016-10-11,但是由于誤操作,傳入了0000-00-00,并沒(méi)有設置正確的數據,那么這時(shí)默認拋出java.sql.SQLException異常
(如果設定這一項 zero datetime behavior(英文字面意思為“0datetime反應”)=
convert to null(英文字面意思為“轉化為null”)
,把日期轉換為null代替異常處理):
即這類(lèi)操作情況的處理策略,有3種
1.exception(不指定,則默認)---->默認拋出異常,
2.convertToNull------->轉化為null
3.round------->替換成最近的日期即XXXX-01-01
這個(gè)在指定管理的數據庫連接屬性文件(jdbc.properties)jdbc的URL常用到:
比如這么寫(xiě):
jdbc.url=jdbc:mysql://localhost:3306/databaseName?zeroDateTimeBehavior=convertToNull
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請
點(diǎn)擊舉報。