国产精品毛片一区二区,欧美熟妇brazzers,丰满女邻居的嫩苞张开视频,天天爽夜夜爽夜夜爽

南京北大青鳥

全國(guó)咨詢電話:15195455103

三分鐘了解北大青鳥
當(dāng)前位置:南京北大青鳥 > 新聞動(dòng)態(tài) > 焦點(diǎn)資訊

mysql時(shí)間戳(掌握mysql的date、datetime、timestamp)

來源:mysql資訊? ? ? 作者:南京北大青鳥 ? ??

  在后端開發(fā)中經(jīng)常會(huì)碰到涉及數(shù)據(jù)庫的場(chǎng)景,不知道屏幕前的你有這樣的疑惑沒有,每每在遇到時(shí)間、日期字段總是讓人頭疼,分不清到底是選date還是datetime,亦或是timestamp,真是

  在后端開發(fā)中經(jīng)常會(huì)碰到涉及數(shù)據(jù)庫的場(chǎng)景,不知道屏幕前的你有這樣的疑惑沒有,每每在遇到時(shí)間、日期字段總是讓人頭疼,分不清到底是選date還是datetime,亦或是timestamp,真是抓耳撓腮啊,怎么辦吶,大都翻看之前的表結(jié)構(gòu),把之前的時(shí)間、日期類型抄過來,草草了事。以至于在后面的開發(fā)中總是為時(shí)間、日期類型做特殊處理,過后便不再理會(huì)這事了,今天就把這事一次性說明白。
 

  1.mysql時(shí)間戳

  在mysql中表示日期和時(shí)間的數(shù)據(jù)類型,大體上有下面幾種,

名稱

定義方式

格式

范圍

date

date

YYYY-MM-DD

'1000-01-01' to '9999-12-31'

time

time[.fraction]

hh:mm:ss[.000000]

'-838:59:59.000000' to '838:59:59.000000'

datetime

datetime[.fraction]

YYYY-MM-DD hh:mm:ss[.000000]

'1000-01-01 00:00:00' to '9999-12-31 23:59:59'

timestamp

timestamp[.fraction]

YYYY-MM-DD hh:mm:ss[.000000]

'1970-01-01 00:00:01' UTC to '2038-01-19 03:14:07' UTC

year

year

YYYY

'1901' to '2155'

 

  注意在上面的表格中,我把日期和時(shí)間分開進(jìn)行了描述,主要是因?yàn)樵诤芏鄨?chǎng)景中很容易把這兩個(gè)詞當(dāng)作同一個(gè)意思,在這里時(shí)間指的時(shí)分秒,日期指的是年月日。

  比較常用的有date、datetime、timestamp,今天就對(duì)這三種表示日期和時(shí)間的類型進(jìn)行分析,看下在實(shí)際開發(fā)過程中如何選擇?



mysql時(shí)間戳
 

  2.日期/時(shí)間類型

  (1)date

  date僅包含日期,mysql存儲(chǔ)和顯示的格式是'YYYY-MM-DD',可以表示的范圍是'1000-01-01' to '9999-12-31'

  (2)datetime

  datetime包含日期、時(shí)間兩部分,mysql存儲(chǔ)和顯示的格式是'YYYY-MM-DD hh:mm:ss',可以表示的范圍是'1000-01-01 00:00:00' to '9999-12-31 23:59:59'

  (3)timestamp

  timestamp包含日期、時(shí)間兩部分,在存儲(chǔ)時(shí)存儲(chǔ)的是時(shí)間戳,可以表示的范圍是'1970-01-01 00:00:01' UTC to '2038-01-19 03:14:07' UTC,這里需要注意timestamp是有時(shí)區(qū)概念的,該類型可跟隨時(shí)區(qū)變化,默認(rèn)情況下是服務(wù)器的時(shí)區(qū),如果一個(gè)數(shù)據(jù)庫連接設(shè)置了時(shí)區(qū)參數(shù),那么該類型的值會(huì)根據(jù)連接設(shè)置的時(shí)區(qū)來存儲(chǔ)和返回值。

  上面介紹了date、datetime、timestamp這三種數(shù)據(jù)類型,還有一個(gè)點(diǎn)需要著重強(qiáng)調(diào),datetime、timestamp是可以有小數(shù)位的,一共可以有6位,所以在定義是可以是datetime(3),要說明的是默認(rèn)情況下是datetime(0),由于是0所以通常情況下就倍省略了;
 

  本文主要分享了,mysql中常見的日期、時(shí)間數(shù)據(jù)類型,下面幾條需謹(jǐn)記,datetime、timestamp都可以滿足需求的情況下,優(yōu)先選擇datetime,因?yàn)槠浔硎镜姆秶?格式化方式為'YYYY-MM-DD hh:mm:ss[.000000]',在進(jìn)行插入的時(shí)候使用的是相應(yīng)的字符串的格式進(jìn)行插入;自動(dòng)初始化和更新語句要牢記,'dt datetime not null default current_timestamp on update current_timestamp';current_timestamp可以寫成current_timestamp(0);標(biāo)識(shí)記錄的新增或更新時(shí)間的字段,設(shè)置為數(shù)據(jù)“default current_timestamp on update current_timestamp‘更省心;


分享到:

相關(guān)閱讀:

近期文章

搶試聽名額

名額僅剩66名

教育改變生活

WE CHANGE LIVES