關於時間和日期的有四類:
1. 年---yaer : 1個字節表示 1901-2155 [0000]表示輸入錯誤
2.年-月-日 ---- date 它佔用的空間不可控,知道怎麼用就行。 範圍: 1000-01-01 ~ 9999-12-31
3. 09:00:00 --- time -838:59:59 ~939:59:59 他不單單侷限於24小時,也可以表示時間間隔,可以爲負。
4. 年-月-日 hh:mm:ss ----- datetime 範圍: 1000-01-01 00:00:00 ----- 9999-12-31 23-59-59
搞個例子,分別測試下
1.year
新建一個表,插入一條1994.
我們再這樣插入下,不輸入1994這樣的四位,只輸入兩位,比如97:
自動識別爲1997,但是如果輸入爲15呢?是1915還是2015?
是這樣的,00~69是20xx,70~99是19xx,我們在測試下,輸入80,再輸入20
2. date
新建一張表,兩條屬性,title carchar和dt date 並測試。
title代表一些事蹟
dt代表date類型時間
在這裏我們要注意,都得mysql版本輸入錯誤日期會報錯,然而我這個能添加到表中但是顯示都是0.
3.time
4.datetime
注意:我們在開發中,很少使用datetime類型表示精確到秒的列,他雖然能精確都秒,並且方便查看,但是計算不放便。我們使用時間戳來表示。
時間戳:代表1970-01-01 00:00:00到當前的秒數
一般存註冊時間,商品發佈時間等,並不是用datetime存儲,而是用時間戳。
各個平臺都有計算自己時間戳的方法。
時間戳是秒數,用int來存,方便計算。
/*----------------------------------華麗的分割線--------------------------------------------------*/
新建一個表來演示枚舉,enum的用法
但是,enum有點違背數據庫的設計原則,因爲每一行的屬性都應該是“原子信息”,不可再分隔,不符合關係型數據庫的設計理念。
我們應該新建一個男女表,然後讓其他表與這個表關聯,如何關聯,以後再說~