當前位置:首頁 » 存儲配置 » mysql存儲日期類型

mysql存儲日期類型

發布時間: 2022-10-15 10:35:11

1. mysql資料庫中欄位為時間類型要怎麼什麼類型表示

Mysql中經常用來存儲日期的數據類型有三種:Date、Datetime、Timestamp。
Date數據類型:用來存儲沒有時間的日期。Mysql獲取和顯示這個類型的格式為「YYYY-MM-DD」。支持的時間范圍為「1000-00-00」到「9999-12-31」。
Datetime類型:存儲既有日期又有時間的數據。存儲和顯示的格式為
「YYYY-MM-DD
HH:MM:SS」。支持的時間范圍是「1000-00-00
00:00:00」到「9999-12-31
23:59:59」。
Timestamp類型:也是存儲既有日期又有時間的數據。存儲和顯示的格式跟Datetime一樣。支持的時間范圍是「1970-01-01
00:00:01」到「2038-01-19
03:14:07」。
所有不符合上面所述格式的數據都會被轉換為相應類型的0值。(0000-00-00或者0000-00-00
00:00:00)

2. mysql儲存時間選擇怎樣的欄位類型

儲存時間,常用的有三個選擇datetime、timestamp、int。昨夜同事問到了,於是今天就總結一下自己的理解。插入效率:datetime
>
timestamp
>
int讀取效率:int
>
timestamp
>
datetime儲存空間:datetime
>
timestamp
=
int具體上面的實驗數據可以看這篇文章。
建立索引的體積,和索引的速度,你懂的。
讓我們來看一個應用場景:
看下這張圖,第一我們需要設置系統的默認時區,第二我們也需要提供不同時區時間顯示的需要。於是,我們分別使用datetime、timestamp、int欄位類型來看下:使用datetime直接顯示時間,這是個不錯的選擇,但是如果考慮到時區,很明顯計算上的麻煩。使用timestampOK,這個很好,可以根據系統的時區來自動輸出時間,但是單個用戶要定製自己的時區呢?再者你不怕麻煩,在程序裡面實現了這個計算,伺服器若是換個地方,改了下時區,你程序裡面計算單個用戶當地時間的代碼怎麼辦(timestamp出來的時間會根據時區的變化而變化,在某些情況下是不錯的選擇,但在某些情況下,真的很雞肋)。使用int從上面兩個類型的缺點看來,貌似這個類型可以解決以上的問題,其實我們只要存格林時間的unix
timestamp就好了,時區時間的計算上也很方便,讀取的效率也不錯。我覺得用這個儲存的缺點呢,就是直接select的時候時間不能直觀的顯示出來。看看其他開源程序是怎麼做的discuz,
typecho,
emlog等等等等,他們都選用int了,這一定有他們的道理,我想也沒什麼可以多說的了。

3. mysql儲存時間選擇怎樣的欄位類型

儲存時間,常用的有三個選擇datetime、timestamp、int。昨夜同事問到了,於是今天就總結一下自己的理解。插入效率:datetime > timestamp > int讀取效率:int > timestamp > datetime儲存空間:datetime > timestamp = int具體上面的實驗數據可以看這篇文章。 建立索引的體積,和索引的速度,你懂的。 讓我們來看一個應用場景: 看下這張圖,第一我們需要設置系統的默認時區,第二我們也需要提供不同時區時間顯示的需要。於是,我們分別使用datetime、timestamp、int欄位類型來看下:使用datetime直接顯示時間,這是個不錯的選擇,但是如果考慮到時區,很明顯計算上的麻煩。使用timestampOK,這個很好,可以根據系統的時區來自動輸出時間,但是單個用戶要定製自己的時區呢?再者你不怕麻煩,在程序裡面實現了這個計算,伺服器若是換個地方,改了下時區,你程序裡面計算單個用戶當地時間的代碼怎麼辦(timestamp出來的時間會根據時區的變化而變化,在某些情況下是不錯的選擇,但在某些情況下,真的很雞肋)。使用int從上面兩個類型的缺點看來,貌似這個類型可以解決以上的問題,其實我們只要存格林時間的unix timestamp就好了,時區時間的計算上也很方便,讀取的效率也不錯。我覺得用這個儲存的缺點呢,就是直接select的時候時間不能直觀的顯示出來。看看其他開源程序是怎麼做的discuz, typecho, emlog等等等等,他們都選用int了,這一定有他們的道理,我想也沒什麼可以多說的了。

4. mysql日期存儲格式的問題

MySQl中有多種表示日期和時間的數據類型。其中YEAR表示年份,DATE表示日期,TIME表示時間,DATETIME和TIMESTAMP表示日期和實踐。它們的對比如下:
YEAR ,位元組數為1,取值范圍為「1901——2155」
DATE,位元組數為4,取值范圍為「1000-01-01——9999-12-31」
TIME,位元組數為3,取值范圍為「-838:59:59——838:59:59」
DATETIME,位元組數為8,取值范圍為「1000-01-01 00:00:00——9999-12-31 23:59:59」
TIMESTAMP,位元組數為4,取值范圍為「19700101080001——20380119111407」
當插入值超出有效取值范圍時,系統會報錯,並將零值插入到資料庫中。

5. mysql 時間欄位用什麼類弄,長度是多少

mysql時間欄位用:Date、Datetime和Timestamp。

(1)「Date」數據類型:用於存儲沒有時間的日期。 Mysql獲取並顯示此類型的格式為「 YYYY-MM-DD」,支持的時間長度范圍是「 1000-00-00」至「 9999-12-31」。

(2)「Datetime」類型:存儲日期和時間的數據。 存儲和顯示格式為「 YYYY-MM-DD HH:MM:SS」, 支持的時間長度范圍是「 1000-00-00 00:00:00」到「 9999-12-31 23:59:59」。

(3)「Timestamp」類型:存儲日期和時間的數據。 存儲和顯示格式與日期時間相同。 支持的時間長度范圍是「 1970-01-01 00:00:01」至「 2038-01-19 03:14:07」。

所有不符合上述格式的數據都將轉換為0值的相應類型。

(5)mysql存儲日期類型擴展閱讀:

MySQL主要分為三種類型:字元串,日期和數字(每種類型實際上都有一個二進制類型,但並不常用)。

*字元串分為定長char和不定長度varchar,char以聲明的長度為准,而varchar的長度與值的長度和字元集有關。

*數字和日期均為固定長度的欄位。 不同的類型具有不同的長度。 例如,Datetime是5.6.4之後的5個位元組,之前的是8個位元組; timestamp是4個位元組,因為其存儲整數,小數部分的長度通常與位數有關。

6. MySql建表時日期類型的出理

mysql(5.5)所支持的日期時間類型有:DATETIME、TIMESTAMP、DATE、TIME、YEAR。

1.DATETIME 用於表示 年月日 時分秒,是 DATE 和 TIME 的組合,並且記錄的年份比較長久。如果實際應用中有這樣的需求,就可以使用 DATETIME 類型。

2.TIMESTAMP

TIMESTAMP 用於表示 年月日 時分秒,但是記錄的年份比較短暫。

TIMESTAMP 和時區相關,更能反映當前時間。當插入日期時,會先轉換為本地時區後再存放;當查詢日期時,會將日期轉換為本地時區後再顯示。所以不同時區的人看到的同一時間是 不一樣的。

表中的第一個TIMESTAMP列自動設置為系統時間(CURRENT_TIMESTAMP)。當插入或更新一行,但沒有明確給 TIMESTAMP 列賦值,也會自動設置為當前系統時間。如果表中有第二個 TIMESTAMP 列,則默認值設置為0000-00-00 00:00:00。

TIMESTAMP 的屬性受 Mysql 版本和伺服器 SQLMode 的影響較大。

如果記錄的日期需要讓不同時區的人使用,最好使用 TIMESTAMP。

3.DATE

DATE 用於表示 年月日,如果實際應用值需要保存 年月日 就可以使用 DATE。

4.TIME

TIME 用於表示 時分秒,如果實際應用值需要保存 時分秒 就可以使用 TIME。

5.YEAR

YEAR 用於表示 年份,YEAR 有 2 位(最好使用4位)和 4 位格式的年。 默認是4位。如果實際應用只保存年份,那麼用 1 bytes 保存 YEAR 類型完全可以。不但能夠節約存儲空間,還能提高表的操作效率。

    資料拓展:

每種日期時間類型都有一個有效值范圍,如果超出這個范圍,在默認的SQLMode下會報錯,並以零值存儲。

插入或更新時,日期時間類型允許「不嚴格」語法,以DATETIME為例(其他日期時間類型雷同):

YYYY-MM-DD HH:MM:SS或YY-MM-DD HH:MM:SS 格式的字元串。任何符號都可以用作日期部分或時間部分的間隔符。例如:「14-06-18 14:54:10」、「14*06*18 14.54.10」、「14+06+18 14=54=10」是等價的。對於包含日期時間的字元串值,如果月、日、時、分、秒的值小於10,不需要指定兩位數。例如:「2014-2-3 2:3:6」、「2014-02-03 02:03:06」是等價的。

YYYYMMDDHHMMSS 或YYMMDDHHMMSS 格式的字元串。如果字元串對於日期時間類型是合法的就可以解釋為日期時間類型。例如:「20140618145410」 和 「140618145410」將被解釋為 「2014-06-18 14:54:10」 ,但是「20140618145480」 是不合法的(秒數不合法),將被解釋為 「0000-00-00 00:00:00」。

YYYYMMDDHHMMSS 或YYMMDDHHMMSS 格式的數字。如果該數字對日期時間類型是合法的就可以解釋為日期時間類型。例如:「20140618145410」 和 「140618145410」 將被解釋為 「2014-06-18 14:54:10」 。數值的長度應為6、8、12、14。如果數值長度是 8 或 14 位長,則假定為 YYYYMMDD 或YYYYMMDDHHMMSS格式。如果數值為 6 或 12 位長,則假定為 YYMMDD 或YYMMDDHHMMSS格式。

    7. mysql資料庫里的日期用timestamp還是datetime好

    Mysql中經常用來存儲日期的數據類型有2種:Date、Datetime.

    1.Date數據類型:用來存儲沒有時間的日期。Mysql獲取和顯示這個類型的格式為「YYYY-MM-DD」。支持的時間范圍為「1000-00-00」到「9999-12-31」。

    2.Datetime類型:存儲既有日期又有時間的數據。存儲和顯示的格式為 「YYYY-MM-DD HH:MM:SS」。支持的時間范圍是「1000-00-00 00:00:00」到「9999-12-31 23:59:59」。

    熱點內容
    可編程式控制制器試題 發布:2025-05-14 11:25:32 瀏覽:117
    dsp混合編程 發布:2025-05-14 11:23:10 瀏覽:246
    mysql添加存儲過程 發布:2025-05-14 11:23:01 瀏覽:877
    房車旅遊自媒體有腳本嗎 發布:2025-05-14 11:18:18 瀏覽:124
    android輸入法鍵盤 發布:2025-05-14 11:15:48 瀏覽:657
    谷歌商店安卓手機在哪裡 發布:2025-05-14 11:13:46 瀏覽:534
    編程貓銷售女 發布:2025-05-14 11:13:36 瀏覽:334
    安卓卡無翼怎麼出小黑屋 發布:2025-05-14 11:13:00 瀏覽:580
    買商用筆記本電腦主要看哪些配置 發布:2025-05-14 11:12:15 瀏覽:949
    如何在伺服器里做一把神器 發布:2025-05-14 11:11:19 瀏覽:710