Mysql中的Datetime和Timestamp比較
mysql中用于表示時(shí)間的三種類型date, datetime, timestamp (如果算上int的話,四種) 比較容易混淆,下面就比較一下這三種類型的異同
相同點(diǎn)
都可以用于表示時(shí)間
都呈字符串顯示
不同點(diǎn)
1.顧名思義,date只表示'YYYY-MM-DD'形式的日期,datetime表示'YYYY-MM-DD HH:mm:ss'形式的日期加時(shí)間,timestamp與datetime顯示形式一樣。
2.date和datetime可表示的時(shí)間范圍為'1000-01-01'到'9999-12-31',timestamp由于受32位int型的限制,能表示'1970-01-01 00:00:01'到'2038-01-19 03:14:07'的UTC時(shí)間。
3.mysql在存儲(chǔ)timestamp類型時(shí)會(huì)將時(shí)間轉(zhuǎn)為UTC時(shí)間,然后讀取的時(shí)候再恢復(fù)成當(dāng)前時(shí)區(qū)。 假如你存儲(chǔ)了一個(gè)timestamp類型的值之后,修改了mysql的時(shí)區(qū),當(dāng)你再讀取這個(gè)值時(shí)就會(huì)得到一個(gè)錯(cuò)誤的時(shí)間。而這種情況在date和datetime中不會(huì)發(fā)生。
4.timestamp類型提供了自動(dòng)更新的功能,你只需要將它的默認(rèn)值設(shè)置為CURRENT_TIMESTAMP。
5.除了date是保留到天,datetime和timestamp都保留到秒,而忽略毫秒。
時(shí)間格式
mysql提供了一種比較寬松的時(shí)間字符串格式用于增刪改查。參考iso時(shí)間格式,一般習(xí)慣于寫成'2013-06-05 16:34:18'。但是你也可以簡(jiǎn)寫成'13-6-5',但是這樣容易造成混淆,比如mysql也會(huì)把'13:6:5'也當(dāng)做年月日處理,而當(dāng)'13:16:5'這種形式,則被mysql認(rèn)為是不正確的格式,會(huì)給出一個(gè)警告,然后存入數(shù)據(jù)庫(kù)的值是'0000-00-00 00:00:00'。
手冊(cè)中還特意提到了一種情況,就是當(dāng)年的值是0~69時(shí),mysql認(rèn)為是2000~2069,而70~99時(shí)則認(rèn)為是1970~1999。我感覺是一種畫蛇添足了。
總之,以不變應(yīng)萬變,使用'YYYY-MM-DD HH:mm:ss'格式總是不會(huì)錯(cuò)的。
- MySQL之DATETIME與TIMESTAMP的時(shí)間精度問題
- MySQL?時(shí)間類型用?datetime,?timestamp?還是?integer?更好
- MYSQL?數(shù)據(jù)庫(kù)時(shí)間字段?INT,TIMESTAMP,DATETIME?性能效率的比較介紹
- 淺談Mysql時(shí)間的存儲(chǔ)?datetime還是時(shí)間戳timestamp
- 詳解MySQL中timestamp和datetime時(shí)區(qū)問題導(dǎo)致做DTS遇到的坑
- MySQL 中 datetime 和 timestamp 的區(qū)別與選擇
- MySQL中datetime和timestamp的區(qū)別及使用詳解
- 關(guān)于MySQL中datetime和timestamp的區(qū)別解析
相關(guān)文章
MySql連接數(shù)據(jù)庫(kù)常用參數(shù)及代碼解讀
這篇文章主要介紹了MySql連接數(shù)據(jù)庫(kù)常用參數(shù)及代碼解讀,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-02-02mysql存儲(chǔ)過程游標(biāo)之loop循環(huán)解讀
這篇文章主要介紹了mysql存儲(chǔ)過程游標(biāo)之loop循環(huán)解讀,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-07-07mysql導(dǎo)出指定數(shù)據(jù)或部份數(shù)據(jù)的方法
mysql雖然可以使用mysqldump來進(jìn)行數(shù)據(jù)的到處,可是在很多場(chǎng)合的需求都不一樣,比如我只要導(dǎo)出某個(gè)字段呢?只要導(dǎo)出某些我需要的數(shù)據(jù)呢?2014-03-03探討:MySQL中如何查詢當(dāng)前正在運(yùn)行的SQL語句
本篇文章是對(duì)在MySQL中如何查詢當(dāng)前正在運(yùn)行的SQL語句進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06MySQL Workbench導(dǎo)入excel數(shù)據(jù)的實(shí)現(xiàn)示例
本文主要介紹了MySQL Workbench導(dǎo)入excel數(shù)據(jù)的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01CentOS 6.5 i386 安裝MySQL 5.7.18詳細(xì)教程
這篇文章主要介紹了CentOS 6.5 i386 安裝MySQL 5.7.18詳細(xì)教程,需要的朋友可以參考下2017-04-04淺談innodb_autoinc_lock_mode的表現(xiàn)形式和選值參考方法
下面小編就為大家?guī)硪黄獪\談innodb_autoinc_lock_mode的表現(xiàn)形式和選值參考方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-03-03Win10安裝mysql8.0.15 winx64及連接服務(wù)器過程中遇到的問題
這篇文章主要介紹了Win10安裝mysql8.0.15 winx64及連接服務(wù)器過程中遇到的問題,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-12-12