1. 程式人生 > >關於mysql5.5與mysql5.7版本timestamp使用差異

關於mysql5.5與mysql5.7版本timestamp使用差異

開發過程中之前使用的是5.7,目前一個專案是5.5,寫程式碼時候沒有發現問題,但是後來發現timestamp的時間欄位引數是不一致的,遂查詢總結,只總結了自己使用中的問題,其他問題歡迎大家一起總結

1、5.7版本的 timestamp型別 ,在表設計時多個欄位為timestamp時,都可以使用CURRENT_TIMESTAMP作為預設值,而且都可以根據當前時間戳更新

2、而5.5-5.6.4版本中 ,在表設計時多個欄位為timestamp時候,只能有一個CURRENT_TIMESTAMP作為預設值,而且要在第一個timestamp型別欄位設定。如果當前的timestamp欄位為非空的話預設是根據當時時間戳更新,所以此處要注意,如果你是update_time的話是可以的,如果你是create_time的話此欄位為非空,那麼預設根據當前時間戳更新,你以後每次修改資料都會導致建立時間變化,這是不允許的,所以此處要注意

還有就是能用高版本儘量用高版本,相對這些問題,會解決的比較好