《Mysql入門Mysql中的Datetime和Timestamp比較》要點(diǎn):
本文介紹了Mysql入門Mysql中的Datetime和Timestamp比較,希望對您有用。如果有疑問,可以聯(lián)系我們。
MYSQL應(yīng)用mysql中用于表示時間的三種類型date, datetime, timestamp (如果算上int的話,四種) 比擬容易混淆,下面就比擬一下這三種類型的異同
MYSQL應(yīng)用相同點(diǎn)
MYSQL應(yīng)用都可以用于表現(xiàn)時間
都呈字符串顯示
MYSQL應(yīng)用分歧點(diǎn)
MYSQL應(yīng)用1.顧名思義,date只表示'YYYY-MM-DD'形式的日期,datetime表示'YYYY-MM-DD HH:mm:ss'形式的日期加時間,timestamp與datetime顯示形式一樣.
2.date和datetime可表示的時間范圍為'1000-01-01'到'9999-12-31',timestamp由于受32位int型的限制,能表示'1970-01-01 00:00:01'到'2038-01-19 03:14:07'的UTC時間.
3.mysql在存儲timestamp類型時會將時間轉(zhuǎn)為UTC時間,然后讀取的時候再恢復(fù)成當(dāng)前時區(qū). 假如你存儲了一個timestamp類型的值之后,修改了mysql的時區(qū),當(dāng)你再讀取這個值時就會得到一個錯誤的時間.而這種情況在date和datetime中不會發(fā)生.
4.timestamp類型提供了自動更新的功能,你只需要將它的默認(rèn)值設(shè)置為CURRENT_TIMESTAMP.
5.除了date是保存到天,datetime和timestamp都保存到秒,而忽略毫秒.
MYSQL應(yīng)用時間格局
MYSQL應(yīng)用mysql提供了一種比擬寬松的時間字符串格式用于增刪改查.參考iso時間格式,一般習(xí)慣于寫成'2013-06-05 16:34:18'.但是你也可以簡寫成'13-6-5',但是這樣容易造成混淆,比如mysql也會把'13:6:5'也當(dāng)做年月日處理,而當(dāng)'13:16:5'這種形式,則被mysql認(rèn)為是不正確的格式,會給出一個警告,然后存入數(shù)據(jù)庫的值是'0000-00-00 00:00:00'.
MYSQL應(yīng)用手冊中還特意提到了一種情況,便是當(dāng)年的值是0~69時,mysql認(rèn)為是2000~2069,而70~99時則認(rèn)為是1970~1999.我感覺是一種畫蛇添足了.
MYSQL應(yīng)用總之,以不變應(yīng)萬變,使用'YYYY-MM-DD HH:mm:ss'格局總是不會錯的.
歡迎參與《Mysql入門Mysql中的Datetime和Timestamp比較》討論,分享您的想法,維易PHP學(xué)院為您提供專業(yè)教程。
轉(zhuǎn)載請注明本頁網(wǎng)址:
http://www.fzlkiss.com/jiaocheng/13994.html