上月底在請客戶的MS更新一MYSQL資料表時,一直提示:
Incorrect datetime values:'2006-10-07 72:46:56' for column 'indate' at row 16255
通過提示訊息可以了解到是某一日期欄中的小時超出60,
但奇怪的是,我請MS傳資料過來時導入後測試卻不會有這種類似的錯誤
後來親自處理,通過下列查詢語句來看
select accno,seq,date_format('%H') as hh from table order by hh desc;
select accno,seq,date_format('%m') as mm from table order by mm desc;
select accno,seq,date_format('%s') as ss from table order by ss desc;
總共大概不過50筆,待逐一糾正後才正常
時間溢出的欄位在程式中是用DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")來自動寫入的
叫人詫異的是怎麽會出現時間的溢出呢?